目前,我创建了一个基于以下
https://github.com/itsrifat/flask-celery-docker-scale
芹菜工人和花卉监视都在同一目录中运行flask-celery
原因是,以便 Flower 可以访问 Celery worker 代码模块,并且以下带有-A
标志的命令将起作用
entrypoint: flower
command: -A tasks --port=5555 --broker=redis://redis:6379/0
这就是他们的docker-compose.yml的样子
worker:
build:
context: ./flask-celery
dockerfile: Dockerfile
depends_on:
- redis
monitor:
build:
context: ./flask-celery
dockerfile: Dockerfile
ports:
- "5555:5555"
entrypoint: flower
command: -A tasks --port=5555 --broker=redis://redis:6379/0
depends_on:
- redis
现在,我想创建另一个新的 worker task2.py
代码,它将位于名为 flask-celery2
的新目录中。
那么,我应该如何修改Dockerfile
和docker-compose.yml
,以便花朵能够同时监控tasks
和tasks2
?
是的,您必须让这个新工作线程在单独的容器中运行(最佳实践(并在 dockerfile 中进行配置,然后 flower 可以自动监控此任务,只要它被推送到同一个消息代理中。
您必须使用以下步骤。你必须到你的项目文件夹。
pip install flower
flower -A proj --port=5555
然后,您可以在浏览器中查看并签入您的芹菜任务,例如 http://yourIP:5555