Centos 中使用Supervisor守護程序(轉載)
阿新 • • 發佈:2020-09-19
轉載自 https://www.cnblogs.com/qmhuang/p/8196132.html
配置supervisor實現程序守護
1.安裝supervisor
yum install Supervisor
2.啟動服務
supervisord -c /etc/supervisord.conf
進入 cd /etc 目錄 找到supervisord.conf 配置檔案 和 supervisord.d 資料夾,使用vim編輯supervisord.conf檔案,拉到最底部我們可以看到
files = supervisord.d/*.ini這句程式碼說明它會載入supervisord.d資料夾中的所有.ini配置檔案3.編輯配置檔案
隨後我們在supervosprd.d中建立一個delploy.ini檔案並編輯如下[program:DeployLinux] #DeployLinux 為程式的名稱
command=dotnet DeployLinux.dll #需要執行的命令
directory=/home/publish #命令執行的目錄
environment=ASPNETCORE__ENVIRONMENT=Production #環境變數
user=root #使用者
stopsignal=INT
autostart=true #是否自啟動
autorestart=true #是否自動重啟
startsecs=3 #自動重啟時間間隔(s)
stderr_logfile=/var/log/ossoffical.err.log #錯誤日誌檔案
stdout_logfile=/var/log/ossoffical.out.log #輸出日誌檔案
4.過載配置檔案
執行命令使用心得配置檔案執行supervisor服務
supervisorctl reload //重新載入配置檔案
5.訪問網站
在未執行dotnet xxx.dll啟動程式的情況下 在外部訪問網站路徑成功 成功後supervisor 日誌如下,在日誌中我們看到在啟動過程中,服務載入了我們的配置檔案 deploy.ini6.意外情況
這個問題本不該遇到的,但是由於我是在一無所知的情況下操作的,所以因為沒有啟動服務而一度焦頭爛額,碎記下來警醒自己 說明你沒有啟動服務,執行supervisord -c /etc/supervisord.conf 啟動即可訪問Supervisor的圖形化介面
1.修改配置
將supervisord.conf 中的一段配置更改如下2.過載supervisor配置
然後執行 supervisorctl reload 重新載入配置3.開啟埠
在訪問其web管理介面之前,先需要開啟你為他配置的埠,這裡我們分配給他的是9001埠,下面是埠管理的一些命令firewall-cmd --query-port=9001/tcp //監測埠是否開啟
firewall-cmd --add-port=9001/tcp //開啟80埠
firewall-cmd --remove-port=9001/tcp //關閉80埠
sudo firewall-cmd --reload //重新載入配置