目前,我根据
创建了一个芹菜工人+花卉监控解决方案https://github.com/itsrifat/flask-celery-docker-scale
Celery worker和Flower监控都在同一目录flask-celery
原因是,Flower可以访问Celery worker代码模块,并且带有-A
标志的以下命令可以正常工作
entrypoint: flower
command: -A tasks --port=5555 --broker=redis://redis:6379/0
这就是他们的docker-compose.yml(https://github.com/itsrifat/flask-celery-docker-scale/blob/master/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
?
答案 0 :(得分:0)
是的,您必须让这个新工作程序在单独的容器中运行(最佳实践),并在dockerfile中进行配置,然后只要它被推送到同一消息代理中,flower就可以自动监视此任务。
答案 1 :(得分:0)
您必须使用以下步骤。您必须进入项目文件夹。
pip install flower
flower -A proj --port=5555
然后您可以在http://yourIP:5555之类的浏览器中看到并签入您的芹菜任务。