You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu系统中通过supervisord将Celery worker配置为守护进程

问题原因及解决方案

导致启动报错的核心原因和修正方案如下:

  • 路径解析问题:Supervisor运行时不支持bash环境的~家目录占位符,所有路径必须写完整绝对路径
  • 冗余操作冲突:你已经通过directory参数指定了程序工作目录,不需要在command中额外执行cd命令
  • 可选优化:新增supervisor侧的日志配置,方便后续排查运行问题

修正后的配置内容

替换/etc/supervisor/conf.d/celery.conf的全部内容为以下配置:

[program:celery]
directory=/home/ubuntu/celery
command=/home/ubuntu/.local/bin/celery -A batch.celery worker -f celery.logs --loglevel=INFO
numprocs=1
autostart=true
autorestart=true
user=ubuntu
stdout_logfile=/var/log/celery-worker.log
stderr_logfile=/var/log/celery-worker-error.log
stdout_logfile_maxbytes=50MB
stdout_logfile_backups=3
stderr_logfile_maxbytes=50MB
stderr_logfile_backups=3

配置生效操作

保存配置文件后执行以下命令重载配置并启动服务:

  1. 重载supervisor配置
sudo supervisorctl reread
sudo supervisorctl update
  1. 启动celery服务并验证状态
sudo supervisorctl start celery
sudo supervisorctl status celery

如果仍有异常,可查看/var/log/celery-worker-error.log日志定位具体问题。

内容的提问来源于stack exchange,提问作者Rubal Gulati

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 06:54:01