【发布时间】:2023-01-26 20:52:24
【问题描述】:
我正在用芹菜构建一个 django 应用程序。我尝试为工人编写一个没有容器的 docker-compose。在我的 django Dockerfile 中,一个运行 celery worker 和 django 应用程序的入口点:
...
python manage.py migrate
celery -A api worker -l INFO --detach
python manage.py runserver 0.0.0.0:8000
芹菜将使用此命令运行,但不会使用 django runserver。我在教程中看到他们将 django 容器与 woker 容器分开,反之亦然。我看不出对这种分离的解释。我还观察到两个 python 容器(django、worker)具有相同的体积。如果 celery 与 django 具有不同的环境,它如何添加任务?在我看来,两个容器将有两个 django 应用程序(相同的体积),其中一个运行 runserver,另一个运行 celery worker。我不明白分离。
【问题讨论】: