У меня есть некоторые периодические задачи, которые я выполняю с сельдереем (демонизируется supervisord), но после попытки создать каталог в домашнем каталоге для пользователя, который я настроил для процесса supervisor'd, я получил ошибку «Отказано в доступе».Посмотрев на диктовку os.environ
в работающей задаче сельдерея, я заметил, что для переменной USER
задано значение «root», а не для пользователя, которого я настроил в своей конфигурации supervisord для сельдерея.
Этокак выглядит мой /usr/local/etc/supervisord.conf
:
[unix_http_server]
file=/tmp/supervisor.sock
chmod=0777
[supervisord]
logfile=/var/log/supervisord.log
pidfile=/var/run/supervisord.pid
[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[supervisorctl]
serverurl=unix:///tmp/supervisor.sock
[program:celery]
command=/home/<USER>/.virtualenvs/sync/bin/celeryd --beat --loglevel=INFO
environment=PYTHONPATH=/home/<USER>/apps/sync
directory=/home/<USER>/apps/sync
user=<USER>
numprocs=1
stdout_logfile=/var/log/celeryd.log
stderr_logfile=/var/log/celeryd.log
autostart=true
autorestart=true
startsecs=10
stopwaitsecs = 30
Что может быть причиной этого?Любая помощь будет очень признательна!