【发布时间】:2020-08-01 02:05:39
【问题描述】:
我在 Docker 容器中运行 Django、Celery 和 RabbitMQ。
一切都已配置好并且正在运行,但是当我尝试安装 django-celery-beat 时,我在初始化服务时遇到了问题。
具体来说,这个命令:
celery -A project beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler
导致此错误:
celery.platforms.LockFailed: [Errno 13] Permission denied: '/usr/src/app/celerybeat.pid'
查看原因/解决方案时,当默认调度程序 (celery.beat.PersistentScheduler) 尝试跟踪本地搁置数据库文件中的最后运行时间并且没有写入权限时,似乎会发生权限被拒绝错误。
但是,我使用django-celery-beat 并应用--scheduler 标志来使用django_celery_beat.schedulers 服务,该服务应该将计划存储在Django 数据库中,因此不需要写入权限。
还有什么可能导致这个问题? / 如何进一步调试?
【问题讨论】:
标签: django docker celery celerybeat django-celery-beat