Dockerconfiguration:Celery + RabbitMQ

如何在docker集装箱中运行Celery和RabbitMQ? 你能指点我示例docker文件或撰写文件?

这是我的:

Dockerfile:

FROM python:3.4 ENV PYTHONBUFFERED 1 WORKDIR /tasker ADD requirements.txt /tasker/ RUN pip install -r requirements.txt ADD . /tasker/ 

泊坞窗,compose.yml

 rabbitmq: image: tutum/rabbitmq environment: - RABBITMQ_PASS=mypass ports: - "5672:5672" - "15672:15672" celery: build: . command: celery worker --app=tasker.tasks volumes: - .:/tasker links: - rabbitmq:rabbit 

我遇到的问题是我不能让芹菜活着或跑步。 它不断退出。

您可以尝试模拟官方的芹菜Dockerfile ,它在CMD ["celery", "worker"]之前做了更多的设置。

查看该图像的使用情况以正确运行。

开始一个芹菜工(RabbitMQ经纪人)

 $ docker run --link some-rabbit:rabbit --name some-celery -d celery 

检查群集的状态

 $ docker run --link some-rabbit:rabbit --rm celery celery status 

如果你可以在你的docker-compose中使用这个图片,那么你可以尝试构build自己的起始的FROM celery而不是FROM python

我有类似的芹菜退出问题,而dockerizing应用程序。 您应该在您的芹菜configuration中使用兔子服务名称(在您的情况下它是rabbitmq )作为主机名。 rabbitmq
使用broker_url = 'amqp://guest:guest@rabbitmq:5672//'而不是broker_url = 'amqp://guest:guest@localhost:5672//'

在我的情况下,主要组件是烧瓶,芹菜和Redis.My问题是这里请检查链接,你可能会觉得它有用。

在我的docker-compose.yml中使用了一些东西。 这个对我有用。 检查在这个媒介的细节

 version: '2' services: rabbit: hostname: rabbit image: rabbitmq:latest environment: - RABBITMQ_DEFAULT_USER=admin - RABBITMQ_DEFAULT_PASS=mypass ports: - "5672:5672" worker: build: context: . dockerfile: dockerfile volumes: - .:/app links: - rabbit depends_on: - rabbit 
Interesting Posts