前几日在头条上看到了 优麒麟[
https://www.ubuntukylin.com/] ,出于好奇就下载安装玩玩,整体感觉不错(当然服务器上使用建议使用银河麒麟[
http://www.kylinos.cn/scheme/server.html])。当然这不是重点,重点是要在它上面部署的.Net Core 应用程序。
1、安装.Net Core 运行环境
1.1、将 Microsoft 包签名密钥添加到受信任密钥列表,并添加包存储库。
sudo wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
1.2、安装运行时
1.2.1、更新包
sudo apt-get update
1.2.1.1、运行后错误
1.2.1.1、解决方案:
sudo apt update
后面一路 y 搞定
1.2.2、安装运行时
sudo apt-get update; \
sudo apt-get install -y apt-transport-https && \
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-3.1
1.2.3、验证是否安装成功
dotnet --info
2、安装Nginx
2.1、安装
sudo apt-get install -y nginx
2.2、查看nginx是否安装成功
nginx -v
2.3、在浏览器中验证
在浏览器中 输入:ip地址
3、上传应用程序
3.1、创建文件夹
sudo mkdir -p /var/www/web
3.2、ftp 上传发布后的应用程序
3.3、配置 nginx 代理
3.3.1、编辑配置文件
sudo vim /etc/nginx/sites-available/default
3.3.2、内容
server {
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;
}
}
3.3.3、验证配置文件与重新加载配置
sudo nginx -t
sudo nginx -s reload
4、配置守护进程Supervisor
4.1、安装 supervisor
sudo apt-get install supervisor
4.2、配置 aspnetCoreDemo.conf 配置文件
sudo vim /etc/supervisor/conf.d/aspnetCoreDemo.conf
4.2.1、内容
[program:aspnetCoreDemo]
command=/usr/bin/dotnet /var/www/web/aspnetCoreDemo.dll
directory=/var/www/web/
autostart=true
autorestart=true
stderr_logfile=/var/log/aspnetCoreDemo.err.log
stdout_logfile=/var/log/aspnetCoreDemo.out.log
environment=ASPNETCORE_ENVIRONMENT=Production
user=www-data
stopsignal=INT
stopasgroup=true
killasgroup=true
4.3、重启supervisor
sudo service supervisor restart
注意:一定要设置 /var/www/web/ 的权限
出现问题后可在上面配置的日志文件中查看详细信息
至此可在浏览器中访问了
当然如果有啥问题可与我联系。