利用 WinSCP 將自己開發的 .NET Core 程式上傳到 Ubuntu 上,
再透過 PuTTY 執行 .NET Core 程式,當 PuTTY 關閉後,
.NET Core 程式也會關閉。
所以我需要利用 supervisord 來管理 .NET Core 程式,
在 PuTTY 關閉後,也能正常運行。
在 Ubuntu 安裝 supervisord
先執行 sudo su 換 root 權限
apt-get update
apt-get install -y supervisor
安裝完,輸入 service supervisor status 看看是否安裝成功。
編輯 supervisor 設定檔
先執行 sudo su 換 root 權限
vim /etc/supervisor/supervisord.conf
進入 vim 修改 supervisord.conf 檔案
按下 i (-- INSERT --)
新增 supervisor 設定
[program:你的程式]
command=/usr/bin/dotnet /home/使用者/你的程式目錄/你的程式.dll
directory=/home/使用者/你的程式目錄/
user =root
autostart=true
autorestart=true
startsecs=3
stderr_logfile=/tmp/你的程式_err.log
stdout_logfile=/tmp/你的程式.log
environment=ASPNETCORE__ENVIRONMENT=Production
或直接指定路徑
command=/usr/share/dotnet/dotnet /home/你的程式目錄/你的程式.dll
PS. dotnet 安裝路徑可以用 dotnet --info 查到
輸入 :wq 存檔後,用指令重新啟動 supervisord
supervisorctl reload
輸入 service supervisor status 看看是否設定成功
用 supervisor 啟動你的程式
supervisorctl start 你的程式
或直接指定路徑
command=/usr/share/dotnet/dotnet /home/你的程式目錄/你的程式.dll
PS. dotnet 安裝路徑可以用 dotnet --info 查到
輸入 :wq 存檔後,用指令重新啟動 supervisord
supervisorctl reload
輸入 service supervisor status 看看是否設定成功
用 supervisor 啟動你的程式
supervisorctl start 你的程式