Masalah kesalahan soket supervisor [ditutup]


99
$ supervisorctl reread
error: <class 'socket.error'>, [Errno 111] Connection refused: file: /usr/lib64/python2.6/socket.py line: 567

Saya mencoba mengonfigurasi supervisor di sistem produksi saya, tetapi saya mengalami kesalahan ini. File log supervisor kosong.

Saat saya mengetik supervisorctl, ia mengeluh:

http://localhost:9001 refused connection

Tidak ada yang sedang mendengarkan pada port 9001, AFACT: lsof | grep TCPtidak menghasilkan apa-apa.

Jawaban:


172

Anda harus memulai supervisord sebelum Anda dapat menggunakan supervisorctl. Dalam kasus saya:

sudo supervisord -c /etc/supervisor/supervisord.conf
sudo supervisorctl -c /etc/supervisor/supervisord.conf

2
Anda seharusnya tidak perlu sudo supervisorctl, tetapi saya mengalami masalah perizinan yang menyebabkan saya menyerah untuk menyelesaikan masalah itu
kelorek

1
Saya telah mengeluarkan yang sama dengan kelorek tetapi perintah di atas tidak berhasil pada saya.
Charlesliam

Apa hasil ketika Anda menekan enter?
kelorek


Pria yang luar biasa, saya mendapatkan supervisor saya setelah berabad-abad!
Jaimin

37

Jika Anda memulai supervisord dengan jalur kustom, seperti ini:

sudo supervisord -c /mypath/supervisord.conf

Kemudian Anda juga harus memulai supervisorctl dengan parameter yang sama, seperti ini:

sudo supervisorctl -c /mypath/supervisord.conf

2
ini sangat membantu saya
Justin M. Ucar

12

Anda bisa mendapatkan masalah ini jika Anda memulai supervisor dengan url relatif untuk -cdan kemudian mencoba menjalankan supervisorctl dari direktori yang berbeda.

Sebagai contoh:

supervisord -c supervisord.conf
supervisorctl start someapp ## works 
cd somedirectory
supervisorctl restart someapp ## http://localhost:9001 refused connection

Solusinya adalah selalu menggunakan jalur absolut. misalnya:

Baik:

supervisord -c /etc/supervisor/supervisord.conf

Buruk:

supervisord -c supervisord.conf

5

Masalah ini juga terjadi ketika versi lama supervisord.conffile digunakan. Versi supervisor yang lebih baru menggunakan file konfigurasi yang berbeda. Solusi di atas tidak berfungsi. Dalam hal ini Anda hanya perlu membuat ulang file konfigurasi dengan

echo_supervisord_conf > /etc/supervisord.conf

Semoga ini membantu seseorang.


3

tolong lakukan hal berikut:

sudo service supervisor start

posting yang semuanya normal seperti b4 - ada masalah dengan versi 1b

sudo supervisorctl reload


2

Di Ubuntu 18.04 dengan paket distribusi

Anda mungkin melakukan kesalahan yang sama seperti saya dan membuat file konfigurasi /etc/supervisord.confsementara manajer layanan saya ( systemd ) menggunakan file konfigurasi/etc/supervisor/supervisord.conf

sudo rm /etc/supervisord.conf

Atau

sudo mv /etc/supervisord.conf /etc/supervisor/supervisord.conf

jika Anda ingin menyimpannya

Sekarang kamu bisa lari sudo supervisorctl


Mengapa?

ketika Anda menjalankannya supervisorctlpertama kali mencari file konfigurasi yang terletak di /etc/supervisord.conf, jika tidak ada, itu akan mencari file default paket /etc/supervisor/supervisord.confini adalah yang sebenarnya dijalankan oleh systemd .

Systemd selalu menggunakan file tersebut /etc/supervisor/supervisord.confterlepas dari keberadaan file lainnya.

Anda dapat memeriksa file mana yang menggunakan systemd dengan menjalankansudo systemctl status supervisor

masukkan deskripsi gambar di sini Anda dapat melihat di baris terakhir perintah di mana file konfigurasi di-hardcode


-1

keduanya supervisorddan supervisorctlgunakan -cdengan path file config absolut, pastikan kedua perintah dimulai dengan konfigurasi yang sama.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.