centos7 部署.net core
搭建的環(huán)境為Centos7 + .net core + supervisor + nginx
1、如何安裝ftp上傳文件,以前有博文介紹,CentOS7 FTP安裝與配置 - 有夢的秋天 - 博客園 (cnblogs.com)
2、安裝.net core
下載地址:Download .NET (Linux, macOS, and Windows) (microsoft.com)

在 CentOS 上安裝 .NET - .NET | Microsoft Docs 按照鏈接提示,進行安裝

最后輸入:dotnet --info 查看是否安裝成功。

通過ftp把dotnet網(wǎng)站上傳到centos服務(wù)器。
然后在linux中切換到.net目錄上,cd /home/www/ftpuser/zmcl(這個是我存放網(wǎng)站的路徑),然后運行dotnet xxxx.dll
如果想通過ip或者域名訪問,則運行 dotnet zmcl.dll --urls http://*:5000

開放端口,前面的博文也有介紹,可自行查閱。
4、安裝守護進程:supervisor
supervisor:要安裝的軟件的名稱。
supervisord:裝好supervisor軟件后,supervisord用于啟動supervisor服務(wù)。
supervisorctl:用于管理supervisor配置文件中program和supervisor服務(wù)本身。
---------------------------------------------------------------------------------------------------------------------
安裝:
sudo su - #切換為root用戶
yum install epel-release yum install -y supervisor
相關(guān)命令:
systemctl enable supervisord #開機啟動
systemctl start supervisord #開啟
systemctl stop supervisord #停止
systemctl restart supervisord #重啟
systemctl status supervisord.service #查看狀態(tài)
supervisorctl start program_name #啟動某個進程(program_name=配置的進程名稱)
supervisorctl stop program_name #停止某一進程
supervisorctl reload #重新啟動配置中的所有程序
supervisorctl stop all #停止全部進程
supervisorctl update #更新新的配置到supervisord
supervisorctl restart program_name #重啟某一進程
supervisorctl #查看正在守候的進程
配置
配置文件用默認的就可以了,也不用自己去生成了
默認配置文件 vi /etc/supervisord.conf

拉到最后,這里的意思是 /etc/supervisord.d 文件夾下的所有.ini結(jié)尾的文件都可以。
開啟遠程圖形界面:
[inet_http_server] ; inet (TCP) server disabled by default port=*:9001 ; (ip_address:port specifier, *:port for all iface) username=user ; (default is no username (open server)) password=123 ; (default is no password (open server))
port=web管理界面的訪問端口 * 代表所有ip
username= 登錄用戶名
password= 登錄密碼
設(shè)置.net core運行配置
windows本地新建一個netcore.ini文件,內(nèi)容如下(特別注意UTF-8格式,這里我坑了很久)
使用ftp上傳至/etc/supervisord.d文件夾下
[program:zmcl] command=dotnet zmcl.dll --urls http://*:5000 #運行命令 directory=/home/vsftpd/ftpuser/zmcl #程序路徑 environment=ASPNETCORE__ENVIRONMENT=Production user=root stopsignal=INT autostart=true #自動啟動 autorestart=true #3秒自動重啟 startsecs=3 stderr_logfile=/var/log/ossoffical.err.log stdout_logfile=/var/log/ossoffical.out.log
重啟supervisor:
systemctl restart supervisord #重啟
可參閱:http://www.rzrgm.cn/hzzxq/p/9988507.html
3、安裝Nginx
Nginx官網(wǎng):nginx: download
1、添加源
sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
2、安裝Nginx
sudo yum install -y nginx
3、啟動Nginx并設(shè)置開機自動運行
sudo systemctl start nginx.service #開啟服務(wù)
sudo systemctl enable nginx.service #設(shè)置開機啟動
然后訪問:http://192.168.0.129/(這是我測試ip地址),呈現(xiàn)如下頁面,則安裝成功。(默認80端口,如何開發(fā)端口,前面以前博文有介紹,可自行查閱)

修改配置文件,訪問.net core網(wǎng)站
vi /etc/nginx/conf.d/default.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; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
重啟Nginx
nginx -s reload
.net core配置Nginx可參考:CentOS 7 Nginx部署.NET Core Web應(yīng)用 - weiwxg - 博客園 (cnblogs.com)
浙公網(wǎng)安備 33010602011771號