在 Ubuntu 20.04 上,如果 supervisord
不能自动启动,可能是由于服务配置或系统服务管理器(systemd)的问题。以下是一些步骤来确保 supervisord
能够在系统启动时自动启动。
首先,确保你已经安装了 Supervisor:
sudo apt update
sudo apt install supervisor
确保 Supervisor 的配置文件正确。默认情况下,Supervisor 的主配置文件位于 /etc/supervisor/supervisord.conf
。你可以编辑这个文件来确保配置正确:
sudo nano /etc/supervisor/supervisord.conf
确保配置文件中没有语法错误,并且包含以下内容:
[unix_http_server]
file=/var/run/supervisor.sock ; (the path to the socket file)
[supervisord]
logfile=/var/log/supervisor/supervisord.log ; (main log file; default $CWD/supervisord.log)
pidfile=/var/run/supervisord.pid ; (supervisord pidfile; default supervisord.pid)
childlogdir=/var/log/supervisor ; ('AUTO' child log dir, default $TEMP)
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///var/run/supervisor.sock ; use a unix:// URL for a unix socket
[include]
files = /etc/supervisor/conf.d/*.conf
如果 supervisord
不能自动启动,可能是因为 systemd 服务文件没有正确配置。创建或编辑 supervisord
的 systemd 服务文件:
sudo nano /etc/systemd/system/supervisord.service
在文件中添加以下内容:
[Unit]
Description=Supervisor process control system for UNIX
Documentation=http://supervisord.org
After=network.target
[Service]
ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
ExecStop=/usr/bin/supervisorctl shutdown
ExecReload=/usr/bin/supervisorctl reload
KillMode=process
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
保存并关闭文件后,重新加载 systemd 配置:
sudo systemctl daemon-reload
启动 Supervisor 服务并设置为开机自启动:
sudo systemctl start supervisord
sudo systemctl enable supervisord
检查 supervisord
服务的状态,确保它正在运行:
sudo systemctl status supervisord
你应该看到类似以下的输出,表示服务正在运行:
● supervisord.service - Supervisor process control system for UNIX
Loaded: loaded (/etc/systemd/system/supervisord.service; enabled; vendor preset: enabled)
Active: active (running) since ...
Docs: http://supervisord.org
Main PID: ...
Tasks: ...
Memory: ...
CGroup: /system.slice/supervisord.service
└─...
如果 supervisord
仍然不能自动启动,检查日志文件以获取更多信息:
sudo journalctl -u supervisord
领取专属 10元无门槛券
手把手带您无忧上云