ubuntu下搭建Supervisor

发布于:2024-06-02 ⋅ 阅读:(138) ⋅ 点赞:(0)
sudo apt update
#安装
sudo apt install supervisor

#启动 supervisord 服务:
sudo systemctl start supervisor

#关闭 supervisord 服务
sudo systemctl stop supervisor

#重启 supervisord 服务
sudo systemctl restart supervisor

#设置 supervisord 开机自启
sudo systemctl enable supervisor

#检查 supervisord 服务状态:
sudo systemctl status supervisor


#查看所有服务的状态
sudo supervisorctl status

#启动某个服务
sudo supervisorctl start <进程名>

#停止某个服务
sudo supervisorctl stop <进程名>

#重启某个服务
sudo supervisorctl restart <进程名>

要添加需要管理的服务到 supervisord,需要编辑配置文件 /etc/supervisor/conf.d/*.conf(在 /etc/supervisor/conf.d/ 目录下新建一个 .conf 文件),并在文件中定义要管理的服务。以下是一个示例:

1.创建一个 .conf 文件,比如 my_service.conf

[program:my_service]
command=/path/to/your/service/command  # 设置要启动的服务的命令
autostart=true
autorestart=true
stderr_logfile=/var/log/my_service.err.log  # 错误日志文件路径
stdout_logfile=/var/log/my_service.out.log  # 输出日志文件路径

#要在 supervisord 中配置在进入某个目录里启动某个应用,
#你可以使用 command 配置中的 directory 选项来指定应用程序的工作目录。
#这样可以确保在启动应用程序之前,supervisord 会先切换到指定的目录
directory=/path/to/your/service



2.使用 supervisord 的命令行工具来更新配置并启动服务:

sudo supervisorctl reread  # 重新加载配置
sudo supervisorctl update  # 更新配置
sudo supervisorctl start my_service  # 启动服务

如果要在 supervisord 的 Web 界面上添加密码登录功能,可以参照以下步骤:

  1. 编辑 supervisord 配置文件 /etc/supervisor/supervisord.conf,添加以下内容:
    [inet_http_server]
    port=0.0.0.0:8848
    username=user
    password=password

    将 user 替换为之前生成的用户名,将 password 替换为密码文件中对应用户的密码。

  2. 重新启动 supervisord 服务:

    sudo systemctl restart supervisor