我有一个 Django (2.1.2) Docker 项目,我尝试包含 Celery (4.2.1),由于权限错误,它最终会退出 0。
docker-compose.yml
...
celery:
build: .
command: celery worker -A core --workdir /opt/services/web_app/src -l info
volumes:
- .:/opt/services/web_app/src
depends_on:
- database1
- redis
Run Code Online (Sandbox Code Playgroud)
在我使用“docker-compose build”构建然后运行“docker-compose up”后,我收到此错误消息:
celery_1 | /usr/local/lib/python3.7/site-packages/celery/platforms.py:796:
celery_1 | RuntimeWarning: You're running the worker with superuser privileges: this
celery_1 | is absolutely not recommended!
celery_1 |
celery_1 | Please specify a different user using the --uid option
Run Code Online (Sandbox Code Playgroud)
所以..我什至不知道 Docker 有“用户”,所以我在公开之前将它添加到底部的“Dockerfile”中。
...
RUN groupadd -g 999 celery && \
useradd -r -u …Run Code Online (Sandbox Code Playgroud)