📌 command 对应的就是celery启动命令 参数查看配置文档中的描述

#!/bin/bash

# 定义变量
BASE_DIR="项目目录"
RUN_NAME="celeryPro"

# 检查日志目录是否存在,如果不存在则创建
LOG_DIR="$BASE_DIR/logs"
if [ ! -d "$LOG_DIR" ]; then
    mkdir -p "$LOG_DIR"
fi

# 创建 supervisord.conf 文件
cat << EOF > supervisord.conf
[supervisord]
nodaemon=false
logfile=$BASE_DIR/supervisord.log  ; 设置日志文件路径和名称
logfile_maxbytes=50MB  ; 日志文件最大大小
logfile_backups=10    ; 日志文件回滚数量

[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[supervisorctl]
serverurl=unix://$BASE_DIR/supervisor.sock

[unix_http_server]
file=$BASE_DIR/supervisor.sock  ; UNIX socket 文件用于通信

[program:$RUN_NAME]
command=celery -A celery_tasks worker -l info -c 2
directory=$BASE_DIR
autostart=true
autorestart=true
stdout_logfile=$LOG_DIR/${RUN_NAME}_out.log
stdout_logfile_maxbytes=10MB
stdout_logfile_backups=1
stderr_logfile=$LOG_DIR/${RUN_NAME}_err.log
stderr_logfile_maxbytes=10MB
stderr_logfile_backups=1
EOF
作者:freed  创建时间:2025-03-30 10:00
最后编辑:freed  更新时间:2025-03-30 10:02