我们可以使用echo_supervisord_conf命令得到supervisor配置模板,打开终端执行如下Linux shell命令:
# echo_supervisord_conf > supervisord.conf
该命令输出文件到当前目录下(当然,你也可以指定绝对路径到具体位置),文件名为supervisord.conf
修改supervisord.conf文件,在文件最后加入:
[program:celery.worker] ;指定运行目录 directory=/home/你的项目名称 ;运行目录下执行命令 command=celery -A 你的项目名称worker --loglevel info --logfile celery_worker.log ;启动设置 numprocs=1 ;进程数 autostart=true ;当supervisor启动时,程序将会自动启动 autorestart=true ;自动重启 ;停止信号,默认TERM ;中断:INT (类似于Ctrl+C)(kill -INT pid),退出后会将写文件或日志(推荐) ;终止:TERM (kill -TERM pid) ;挂起:HUP (kill -HUP pid),注意与Ctrl+Z/kill -stop pid不同 ;从容停止:QUIT (kill -QUIT pid) stopsignal=INT ;输出日志 stdout_logfile=celery_worker.log stdout_logfile_maxbytes=10MB ;默认最大50M stdout_logfile_backups=10 ;日志文件备份数,默认为10 ;错误日志 redirect_stderr=false ;为true表示禁止监听错误 stderr_logfile=celery_worker_err.log stderr_logfile_maxbytes=10MB stderr_logfile_backups=10
常用命令
# 启动supervisor输入如下命令,使用具体的配置文件执行: supervisord -c supervisord.conf # 关闭supervisor输入如下命令: supervisorctl -c supervisord.conf shutdown # 重启supervisor输入如下命令: supervisorctl -c supervisord.conf reload # 检测运行状态: supervisorctl status