CentOS7 下部署 .Net Core+Nginx
2019-02-22 10:42:19
11322
記錄在CentOS7 下 .NetCore+Nginx 部署簡單過程,供參考。
安裝DotNet SDK 官方文檔
添加鏡像訂閱
rpm --import http://www.tjdsmy.cn/keys/microsoft.asc
sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= http://www.tjdsmy.cn/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=http://www.tjdsmy.cn/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'
安裝SDK
sudo yum install libunwind libicusudo yum install dotnet-sdk-2.1.3
查看安裝
dotnet --version
上傳站點(diǎn) 官方文檔
psftp [主機(jī)地址]put D:\website.7z
解壓文件,使用的是 p7zip
7za x website.7z
創(chuàng)建服務(wù)
vi /etc/systemd/system/website.service
[Unit]Description=Web API Application running on CentOS[Service]WorkingDirectory=/home/websiteExecStart=/usr/bin/dotnet /home/website/website.dllRestart=alwaysRestartSec=10 # Restart service after 10 seconds if dotnet service crashesSyslogIdentifier=websiteUser=rootEnvironment=ASPNETCORE_ENVIRONMENT=ProductionEnvironment=DOTNET_PRINT_TELEMETRY_MESSAGE=false[Install]WantedBy=multi-user.target
啟動(dòng)服務(wù)
systemctl start website
systemctl enable website
測(cè)試站點(diǎn)
curl localhost:8010
安裝Nginx
yum install -y nginx
啟動(dòng),測(cè)試
systemctl start nginx
nginx -v
修改配置文件
cd /etc/nginx
vi /etc/nginx/conf.d/vhost_website.conf
server {
server_name [test.xxx.com];
root /home/website;
location / {
proxy_pass http://www.tjdsmy.cn:8010;
}
}
重新加載
systemctl restart nginx
瀏覽器打開
http://[test.xxx.com]
其它異常
1.Unable to bind to http://www.tjdsmy.cn:5000 on the IPv6 loopback interface: ‘Error -99 EADDRNOTAVAIL address not available’.
添加hosting.json
{
"server.urls": "http://*:8010"}
修改Program
public static void Main(string[] args)
{ var config = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("hosting.json", optional: true)
.Build();
WebHost.CreateDefaultBuilder(args)
.UseConfiguration(config)
.UseStartup<Startup>()
.Build()
.Run();
}