如何使用 docker 部署 django-q worker?
How to deploy django-q worker with docker?
假设这个简单的 docker-compose 文件。
version: "3.9"
services:
redis:
image: redis:alpine
ports:
- 6379:6379
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- redis
如何添加 django-q worker 来处理来自 web
容器的任务?
我可能可以使用不同的命令构建相同的图像,例如 python manage.py qcluster
,但我认为这个解决方案并不优雅。你能建议一些方法吗?
您可以做的最简单的事情可能是为 qcluster 添加一个新集群。
像这样:
version: "3.9"
services:
redis:
image: redis:alpine
ports:
- 6379:6379
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- redis
djangoq:
build: .
command: python manage.py qcluster
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- redis
假设这个简单的 docker-compose 文件。
version: "3.9"
services:
redis:
image: redis:alpine
ports:
- 6379:6379
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- redis
如何添加 django-q worker 来处理来自 web
容器的任务?
我可能可以使用不同的命令构建相同的图像,例如 python manage.py qcluster
,但我认为这个解决方案并不优雅。你能建议一些方法吗?
您可以做的最简单的事情可能是为 qcluster 添加一个新集群。 像这样:
version: "3.9"
services:
redis:
image: redis:alpine
ports:
- 6379:6379
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- redis
djangoq:
build: .
command: python manage.py qcluster
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- redis