<p>您可以参考<a href="https://github.com/mirumee/saleor" rel="nofollow noreferrer"><em>Saleor</em></a>项目的<code>docker-compose</code>。我建议让<code>celery</code>运行它的守护进程,只依赖<code>redis</code>作为代理。请参阅<a href="https://github.com/mirumee/saleor/blob/master/docker-compose.yml" rel="nofollow noreferrer"><em>docker-compose.yml</em></a>文件的配置:</p>
<pre><code>services:
web:
build:
context: .
dockerfile: ./Dockerfile
args:
STATIC_URL: '/static/'
restart: unless-stopped
networks:
- saleor-backend-tier
env_file: common.env
depends_on:
- db
- redis
celery:
build:
context: .
dockerfile: ./Dockerfile
args:
STATIC_URL: '/static/'
command: celery -A saleor worker app=saleor.celeryconf:app loglevel=info
restart: unless-stopped
networks:
- saleor-backend-tier
env_file: common.env
depends_on:
- redis
</code></pre>
<p>另请参见从两个服务到<code>redis</code>的连接是由<code>environtment vatables</code>分别设置的,如<a href="https://github.com/mirumee/saleor/blob/master/common.env" rel="nofollow noreferrer"><em>common.env</em></a>文件所示:</p>
^{pr2}$