docker 環境下 supervisor中出現的一些問題

1.運行supervisorctl時報錯supervisor.sock refused connection

網上普遍說是superviored掛掉了,但是ps -A 查看進程時並沒有問題 

我懷疑可能是在docker環境下使用unix配置supervior服務端時會啓動失敗

開始的安裝配置方法:https://www.jianshu.com/p/39b476e808d8

出現問題1.我的解決方法:

修改supervisor.conf

[unix_http_server]
file=/tmp/supervisor.sock   ; the path to the socket file
chmod=0700                 ; socket file mode (default 0700)
;chown=nobody:nogroup       ; socket file uid:gid owner
;username=user              ; default is no username (open server)
;password=123               ; default is no password (open server)

[inet_http_server]         ; inet (TCP) server disabled by default
port=127.0.0.1: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)


[supervisorctl]
;serverurl=unix:///tmp/supervisor.sock ; use a unix:// URL  for a unix socket
serverurl=http://127.0.0.1:9001 ; use an http:// url to specify an inet socket
;username=chris              ; should be same as in [*_http_server] if set
;password=123                ; should be same as in [*_http_server] if set
;prompt=mysupervisor         ; cmd line prompt (default "supervisor")
;history_file=~/.sc_history  ; use readline history if available


[include]
files = conf.d/*.conf

 

修改這四個位置的配置參數

2.報錯 unlink: cannot unlink `/tmp/supervisor.sock’: No such file or directory

解決方法

unlink /tmp/supervisor.sock

一般是由於直接kill掉supervisord進程引起,

正確方法關閉 supervisorctl shutdown 

3.關於docker run -d imageid supervisord 運行直接退出的問題

因爲運行完supervisord指令,沒有繼續運行的腳本,docker默認結束運行就退出來了

可以加個死循環保證docker時刻運行

 /bin/sh -c "/opt/start.sh && while true; do echo hello world; sleep 1; done"

start.sh

unlink /tmp/supervisor.sock
service supervisor restart


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章