.Net Core3.1 Centos离线部署

由于生产环境无法链接外网,只能通过离线部署的方式安装.Net Core Runtime
1、ASP.Net Core Runtime 安装
1.1我们使用微软提供的离线安装包进行安装。首先下载tar.gz的离线包,下载网址:https://dotnet.microsoft.com/download/dotnet-core/3.1
这里选择Linux对应的架构的离线包下载

在这里插入图片描述

1.2 在Linux中创建目录
mkdir -p /var/lib/dotnet
1.3 把压缩包上传Linux,解压到/var/lib/dotnet目录
tar zxf aspnetcore-runtime-3.1.1-linux-x64.tar.gz -C /var/lib/dotnet
1.4 创建软链接方式来设置环境变量
ln -s /var/lib/dotnet/dotnet /usr/local/bin
1.5 测试runtime环境是否安装成功
dotnet --info
在这里插入图片描述

2、Asp.Net Core站点服务部署

2.1 在服务器上创建应用的目录
mkdir /home/www
2.2 通过FTP等工具将VS打包好的部署包上传到该目录
2.3 测试站点是否正常运行
cd /home/wwww
dotnet AspNetCoreDeployDemo.dll
如下图所示
在这里插入图片描述

2.4 网页测试或者命令行测试能否打开该地址,如果打不开,请检查firewall端口是否开放
wget http://localhost:5000
这时候,窗口不能关闭,如果关闭就访问不到,下面要使用suppervisor或者systemd等工具进行后台守护进程。

3、Supervisor守护进程
3.1 上传离线包安装,并启动suppervisor
cd /app/supervisor
./run_supervisor.sh
3.2 查看supperisor运行状态
在这里插入图片描述

3.3 查看配置文件,并把后台界面端口关闭,可以看到会加载supervisord/下面的ini配置文件
在这里插入图片描述

3.4 创建AspNetCoreDeployDemo.ini文件
复制代码
#项目名
[program:demo]
#脚本目录
directory=/home/wwww
#脚本执行命令
command=dotnet AspNetCoreDeployDemo.dll
#环境变量
environment=ASPNETCORE_ENVIRONMENT=Production
#用户
user = root
#进程数
numprocs=1
#supervisor启动的时候是否随着同时启动,默认True
autostart=true
#当程序exit的时候,这个program不会自动重启,默认unexpected,设置子进程挂掉后自动重启的情况,有三个选项,false,unexpected和true。如果为false的时候,无论什么情况下,都不会被重新启动,如果为unexpected,只有当进程的退出码不在下面的exitcodes里面定义的
autorestart=false
#这个选项是子进程启动多少秒之后,此时状态如果是running,则我们认为启动成功了。默认值为1
startsecs=1
#把stderr重定向到stdout,默认 false
redirect_stderr = true
#stdout日志文件大小,默认 50MB
stdout_logfile_maxbytes=10
#stdout日志文件备份数
stdout_logfile_backups=10
#日志输出
stderr_logfile=/app/supervisor/logs/demo/log_error.log
复制代码
3.5 重启配置中的所有程序
supervisorctl reload
3.6启动程序
supervisorctl start demo
3.7常用命令
复制代码
supervisord -v 查看版本号
supervisorctl 查看正在守候的进程
supervisorctl start 启动指定应用
supervisorctl stop 停止指定应用
supervisorctl restart all 重启所有应用
supervisorctl stop all 停止所有应用
supervisorctl start all 启动所有应用
复制代码
4、Nginx反向代理
4.1 下载离线包,用浏览器打开地址,选择您要下载的版本:http://nginx.org/packages/centos/7/x86_64/RPMS/
在这里插入图片描述

4.2 这里我们下载的是1.16.1版,上传到服务器,执行命令安装
yum install -y nginx-1.16.1-1.el7.ngx.x86_64.rpm
4.3 启动Nginx并设置开机启动
service nginx start
#或者
systemctl start nginx.service
systemctl enable nginx.service
4.4 查看Nginx版本
nginx -v
4.5 查看Nginx启动状态
service nginx status
systemctl status nginx.service
如图为正在运行状态:

在这里插入图片描述

以上,Nginx已成功运行,安装的配置文件一般在/etc/nginx/nginx.conf

4.6 在/etc/nginx/nginxd/目录下创建站点的配置文件
复制代码
vi /etc/nginx/conf.d/demo.conf

server {
listen 80;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
复制代码
4.7 重载Nginx配置
nginx -s reload
以上,反向代理已部署完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值