.Net Core 部署到Ubuntu 16.04 中的步驟

須要安裝的工具html

  • .Net Core
  • Nginx反向代理服務器(至關於Windows下的IIS)
  • Supervisor(進程管理工具)

.Net Core安裝方法請參閱linux

官方文檔nginx

 

安裝完成後就能夠在項目文件夾,使用如下命令啓動網站ubuntu

dotnet xxx.dll

而後就能夠在瀏覽器打開localhost:5000(5000爲默認端口,若是有修改,請使用實際端口)瀏覽器

可是如今還不能經過ip訪問,這就須要Nginx實現。服務器

 

Nginx
工具

 

經過命令安裝:網站

sudo apt-get install nginx

而後配置nginx的代理轉發,修改/etc/nginx/sites-available/default,修改內容以下spa

//若是沒有權限修改,請使用 sudo chmod 777 xxx 修改權限(xxx表示文件夾路徑或者文件名)

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;
    }
}

 

 

保存退出,而後從新加載nginx代理

 

sudo nginx -t

sudo nginx -s reload

這樣就實現了經過IP訪問

然而,重啓後咱們會發現網站並無開機啓動,這個時候就須要Supervisor了


Supervisor


安裝:

sudo apt-get install supervisor

安裝完成以後,在 /ect/supervisor/confg.d/ 目錄下新建一個配置文件,取名爲 TestCore.conf (我取的是當前項目的名稱)

使用命令新建文件:

sodu touch TestCore.conf

打開TestCore.conf,寫入以下命令(若是沒有權限,請參照上面的方法):

[program:TestCore]
command=dotnet TestCore.dll #要執行的命令
directory=/home/xx/TestCore #命令執行的目錄
environment=ASPNETCORE__ENVIRONMENT=Production #環境變量
user=www-data #進程執行的用戶身份
stopsignal=INT
autostart=true #是否自動啓動
autorestart=true #是否自動重啓
startsecs=1 #自動重啓間隔
stderr_logfile=/var/log/TestCore.err.log #標準錯誤日誌
stdout_logfile=/var/log/TestCore.out.log #標準輸出日誌

//注:#內容爲註釋,代碼中請刪除

配置好之後,須要從新加載一下配置

sudo service supervisor stop
sudo service supervisor start

接下來重啓機器,發現能夠自動運行

 參考文章:http://www.cnblogs.com/savorboard/p/dotnetcore-supervisor.html

相關文章
相關標籤/搜索