这是我的/etc/systemd/system/celery.service
[Unit]
Description=celery service
After=network.target
[Service]
PIDFile=/run/celery/pid
User=celery
Group=celery
RuntimeDirectory=/home/mike/movingcollage
WorkingDirectory=/home/mike/movingcollage
ExecStart=celery -A movingcollage -l info
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s TERM $MAINPID
Restart=on-abort
PrivateTmp=true
[Install]
WantedBy=multi-user.target
/home/mike/movingcollage
是一个在其他地方工作正常的有效目录。我哪里错了?我正在从这个页面中获取建议:
http://docs.celeryproject.org/en/latest/userguide/daemonizing.html#service-file-celery-service
和这个答案:
How can I configure celery to run on startup of nginx?
提前致谢
答案 0 :(得分:2)
RuntimeDirectory
是您希望systemd在/run/
下为您创建的目录的名称。
由于目录名称不能包含斜杠,因此您收到有关该选项无效的错误。
对于您的具体用例,我认为您根本不想指定RuntimeDirectory
(您的Celery是否期望/寻找/run/
下的目录?)