dotNet core 应用部署centos

 需要安装的插件以及支撑架构

 安装dotnetSDK

 安装jexus

 安装supervisord

 遇到问题汇总

 注意事项、扩展延伸

 

需要安装的插件以及支撑架构

1.dotnetSDK

dotnet 相关命令是属于 .NET Core command-line (CLI) 的一部分,Microsoft 为我们提供了这个命令行工具以供我们在开发程序中使用,它主要用来进行对代码的编译、NuGet 包的管理、程序的运行、测试等等。

2.jexus

Jexus 是Linux平台上 的一款免费的ASP.NET WEB服务器。它是 Linux、Unix、FreeBSD等非Windows系统架设 ASP.NET WEB 服务器的核心程序,具备反向代理、入侵检测等重要功能。拥有IIS和其它Web服务器所不具备的高度的安全性

3.supervisord

supervisord 是用Python实现的一款非常实用的进程管理工具,在批量服务化管理时特别有效。可以将非Daemon的应用转为Daemon程序。

 

安装dotNetSDK

执行命令

sudo rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm sudo yum update sudo yum install libunwind libicu sudo yum install dotnet-sdk-2.1.200

安装对应的 dotnet运行时,这次开发用到的是 2.0.6

参考地址:

https://www.microsoft.com/net/download/linux-package-manager/centos/runtime-2.0.6

执行命令

sudo yum install dotnet-runtime-2.0.6

 

安装Jexus

curl https://jexus.org/release/x64/install.sh|sh cd /usr/jexus/siteconf cp default lottery               #lottery是配置名称,不同网站名称不同 vim lottery

修改的内容参考:

port=80 root=http://www.likecs.com/ /dotnet/webAPP/admin1.lottery.com/ hosts=*,admin2.lottery.com    #OR your.com,*.your.com # addr=0.0.0.0 # CheckQuery=false NoLog=true AppHost={CmdLine=http://www.likecs.com/dotnet/webAPP/admin1.lottery.com/Lottery.WEB.dll;AppRoot=http://www.likecs.com/dotnet/webAPP/admin1.lottery.com;Port=5001}

#这一行数据可以不管他,配置https时候用到

# UseHttps=true

# ssl.certificate=http://www.likecs.com/x/xxx.crt  #or pem

# ssl.certificatekey=http://www.likecs.com/x/xxx.key

# ssl.protocol=TLSv1.0    # TLSv1.1 or  TLSv1.2...

# ssl.ciphers=

 

重启读取配置文件

sh /usr/jexus/jws restart

 

重启读取配置文件之后,本地机器做好host文件映射即可通过域名方式访问该站点

 

设置jexus开机自启动

参考地址:

 

cd /etc/init.d vim jws

i编辑模式,粘贴下面内容

#!/bin/bash   #chkconfig: 2345 80 05 #description:jws # . /etc/rc.d/init.d/functions case "$1" in start)  echo "Jexus Start.."  /usr/jexus/jws start  ;; stop)  echo "Jexus Stop.."  /usr/jexus/jws stop  ;; restart)  echo "Jexus Restart"  /usr/jexus/jws restart  ;; status)  /usr/jexus/jws status  ;;*)  exit 1  ;; esac    exit $RETVAL

 

添加权限

chmod 766 jws

添加服务

chkconfig --add jws

 

安装Supervisord

参考地址:https://www.cnblogs.com/hobinly/p/7382038.html

yum install python-setuptools easy_install supervisor

 

配置supervisor

etc下创建目录,并赋权限

mkdir -m 700 -p /etc/supervisor

 

在目录“ /etc/supervisor”下创建配置文件

echo_supervisord_conf > /etc/supervisor/supervisord.conf

 

修改配置文件

vim /etc/supervisor/supervisord.conf

 

在文件末尾添加,注意首尾需无空格,需顶格

[include] files=http://www.likecs.com/etc/supervisor/conf.d/*.conf

 

 

在目录“/etc/supervisor”下创建dotnet core 进程配置文件存放目录“conf.d”

mkdir -m 700 /etc/supervisor/conf.d

 

创建进程配置文件 

vim /etc/supervisor/conf.d/lottery.conf

[program:Lottery.WEB] command=http://www.likecs.com/bin/bash -c "dotnet Lottery.WEB.dll" directory=http://www.likecs.com/dotnet/webAPP/admin1.lottery.com/ stderr_logfile=http://www.likecs.com/var/log/Lottery.error.log stdout_logfile=http://www.likecs.com/var/log/Lottery.stdout.log environment=ASPNETCORE_ENVIRONMENT=Production user=root stopsignal=INT autostart=true autorestart=true startsecs=1

备注command=http://www.likecs.com/bin/bash -c "dotnet Lottery.WEB.dll"

可以改成 command=dotnet /dotnet/webAPP/admin1.lottery.com/dotnet Lottery.WEB.dll

[program:Lottery.WEB] ;显示名称

command=http://www.likecs.com/bin/bash -c "dotnet MyDotNetName.dll"  ;运行命令,启动dotnet进程

directory=http://www.likecs.com/usr/PublishOutput/   ;MyDotNetName目录

stderr_logfile=http://www.likecs.com/var/log/Lottery.error.log  ;错误日志文件

stdout_logfile=http://www.likecs.com/var/log/Lottery.stdout.log  ;日志文件

environment=ASPNETCORE_ENVIRONMENT=Production  ;进程环境变量

user=root   ;进程执行用户

autostart=true  ;自动启动 autorestart=true   ;是否自动重启

startsecs=1     ;自动重启间隔时间

 

创建supervisor 自启动服务

vim /etc/systemd/system/supervisor.service

 

编辑内容: 

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpfzyy.html