芹菜不是 运行(权限被拒绝)
Celery not running (Permission Denied)
我不是 运行Django 项目,这只是一个简单的 python 项目,我想妖魔化芹菜。最初我是 运行 在 shell 中使用它。芹菜有时会挂在两者之间(已知问题)。因此我需要一次又一次地重新启动它。因此,我需要对其进行守护进程,这样我就可以 运行 一个通过 cronjob 自行重启 celery 的脚本。
我在 SO 上查看了各种 threads,但没有运气。
我创建了一个用户和组,都通过以下命令命名为 celery
:-
sudo groupadd celery
sudo useradd -g celery celery
我将此文件创建为:/etc/default/celeryd
CELERYD_NODES="w1"
CELERY_BIN="/usr/local/bin/celery"
CELERY_APP="tasks"
CELERYD_CHDIR="/home/cube26/Desktop/cube26/c26-quicklook"
CELERYD_OPTS="--time-limit=300 --concurrency=8 -Q BBC,BGR,FASTCOMPANY"
CELERY_CONFIG_MODULE="celeryconfig" #I dont know what this is for?
CELERYD_LOG_FILE="/var/log/celery/%n.log"
CELERYD_PID_FILE="/var/run/celery/%n.pid"
CELERY_CREATE_DIRS=1
CELERYD_USER="celery"
CELERYD_GROUP="celery"
然后下载this文件并保存在/etc/init.d/celeryd.
里面
然后chmod +x /etc/init.d/celeryd
使其可执行。
我就是这么做的。
我仍然收到一条错误消息 IOError: [Errno 13] Permission denied: '/var/log/celery/w1.log'
我做错了什么?请帮我改正。
根据评论,您对日志文件的写入权限有误。
请使用以下方法将所有权更改为 celery
:
chown -R celery:celery /var/log/celery/
chown -R celery:celery /var/run/celery/
-R
开关用于在目录中递归更改权限
告诉 celery 将 pid
文件放在哪里:
celery -A config --pidfile=${CELERYD_PID_FILE}
其中 CELERYD_PID_FILE
例如 /var/www/my_site/celery.pid
。
我不是 运行Django 项目,这只是一个简单的 python 项目,我想妖魔化芹菜。最初我是 运行 在 shell 中使用它。芹菜有时会挂在两者之间(已知问题)。因此我需要一次又一次地重新启动它。因此,我需要对其进行守护进程,这样我就可以 运行 一个通过 cronjob 自行重启 celery 的脚本。
我在 SO 上查看了各种 threads,但没有运气。
我创建了一个用户和组,都通过以下命令命名为 celery
:-
sudo groupadd celery
sudo useradd -g celery celery
我将此文件创建为:/etc/default/celeryd
CELERYD_NODES="w1"
CELERY_BIN="/usr/local/bin/celery"
CELERY_APP="tasks"
CELERYD_CHDIR="/home/cube26/Desktop/cube26/c26-quicklook"
CELERYD_OPTS="--time-limit=300 --concurrency=8 -Q BBC,BGR,FASTCOMPANY"
CELERY_CONFIG_MODULE="celeryconfig" #I dont know what this is for?
CELERYD_LOG_FILE="/var/log/celery/%n.log"
CELERYD_PID_FILE="/var/run/celery/%n.pid"
CELERY_CREATE_DIRS=1
CELERYD_USER="celery"
CELERYD_GROUP="celery"
然后下载this文件并保存在/etc/init.d/celeryd.
里面然后chmod +x /etc/init.d/celeryd
使其可执行。
我就是这么做的。
我仍然收到一条错误消息 IOError: [Errno 13] Permission denied: '/var/log/celery/w1.log'
我做错了什么?请帮我改正。
根据评论,您对日志文件的写入权限有误。
请使用以下方法将所有权更改为 celery
:
chown -R celery:celery /var/log/celery/
chown -R celery:celery /var/run/celery/
-R
开关用于在目录中递归更改权限
告诉 celery 将 pid
文件放在哪里:
celery -A config --pidfile=${CELERYD_PID_FILE}
其中 CELERYD_PID_FILE
例如 /var/www/my_site/celery.pid
。