.net core服务程序在centos7上的部署

最近因为项目上的需要,使用.net core写了一个服务,用于指定word模板文件与数据,完成数据的填充(word读写使用npoi)与格式转换(使用aspose,将word转pdf)。之所以选择用.net core就是考虑到跨平台部署的问题。

1、打开powershell,使用ssh登录到服务器(以172.16.170.41为例):

  ssh root@172.16.170.41 

  输入密码即可登录;

 

2、安装.net core3.1(我们的服务是使用3.1版本开发的):

  sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

  sudo yum install dotnet-sdk-3.1

  安装完了运行dotnet --version,如果能查看版本说明安装成功;

 

3、将我们本地编译发布好的服务文件copy到服务器上

  在本地powershell里输入:scp -r C:\pdfservice  root@172.16.170.41:/var/www/pdfservice

  这条命令表示拷贝本地C:\pdfservice下的所有文件,到41服务器的/var/www/pdfservice目录下(会自动创建pdfservice目录);

 

4、安装jexus。jexus是一款国产开源免费应用服务器,功能与Nginx类似,但是更加能够发挥.net core程序的优势。

  curl https://jexus.org/release/x64/install.sh | sudo sh

  完成后,会生成/usr/jexus目录。其中/usr/jexus/siteconf目录下用来存放jexus的配置文件。

 

5、配置jexus。

  进入/usr/jexus/siteconf目录下

  vi pdfservice新建一个配置文件(也可以使用默认配置文件default)

  输入“i”进入编辑模式, copy以下内容:

  

########################################

port=5555
root=/ /var/www/pdfservice/
hosts=* #OR your.com,*.your.com

# User=www-data

# AspNet.Workers=2 # Set the number of asp.net worker processes. Defauit is 1.

# addr=0.0.0.0
# CheckQuery=false
NoLog=true

AppHost={
cmd=dotnet /var/www/pdfservice/CATSTI.PdfService.dll;
root=/var/www/pdfservice/;
port=0;
}

# NoFile=/index.aspx
# Keep_Alive=false
# UseGZIP=false

# UseHttps=true
# ssl.certificate=/x/xxx.crt #or pem
# ssl.certificatekey=/x/xxx.key
# ssl.protocol=TLSv1.0 # TLSv1.1 or TLSv1.2...
# ssl.ciphers=

# DenyFrom=192.168.0.233, 192.168.1.*, 192.168.2.0/24
# AllowFrom=192.168.*.*
# DenyDirs=~/cgi, ~/upfiles
# indexes=myindex.aspx

# Deny asp ...
# rewrite=^/.+?\.(asp|cgi|pl|sh|bash|dll)(\?.*|)$ /.deny->$1
# rewrite=.*/editor/.+ /.deny->editor
# reproxy=/bbs/ http://192.168.1.112/bbs/
# host.Redirect=abc.com www.abc.com 301
# ResponseHandler.Add=myKey:myValue


# Jexus php fastcgi address is ‘/var/run/jexus/phpsvr‘
#######################################################
# fastcgi.add=php|socket:/var/run/jexus/phpsvr

 

  其中:

  port=5555 表示jexus监听5555端口;

  root=/ /var/www/pdfservice/  表示服务的根目录;

  AppHost={
      cmd=dotnet /var/www/pdfservice/CATSTI.PdfService.dll;
      root=/var/www/pdfservice/;
      port=0;
      }

  中的=dotnet /var/www/pdfservice/CATSTI.PdfService.dll 表示服务的入口是使用.net把CATSTI.PdfService.dll启动起来;

  修改完成后,按“esc”键返回浏览模式,再按“:”键,输入wq保存退出;如果输入q!表示不保存退出。

 

6、重启jexus服务并在centos的防火墙中放开5555端口

  重启jexus:service jexus restart

  放开5555端口:firewall-cmd --zone=public --add-port=5555/tcp --permanent

  重启防火墙:firewall-cmd --reload

 

7、如果顺利,服务就可以正式使用了。如果不顺利,就百度吧(:P)

.net core服务程序在centos7上的部署

上一篇:Atitit.隔行换色  变色 css3 结构性伪类选择器


下一篇:Jquery对table表格的动态修改