在docker中使用rabbitmqadmin

在docker中使用rabbitmqadmin,docker,rabbitmq,rabbitmqadmin,Docker,Rabbitmq,Rabbitmqadmin,============================Dockerfile1================= FROM rabbitmq:3-management MAINTAINER 123 "qyb1234@everbridge.com" RUN apt-get update ENV REFERSHED_AT 2015-07-20 RUN apt-get install -y python ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin RU

============================Dockerfile1=================

FROM rabbitmq:3-management
MAINTAINER 123 "qyb1234@everbridge.com"
RUN apt-get update
ENV REFERSHED_AT 2015-07-20
RUN apt-get install -y python
ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin
RUN chmod 755 /usr/local/bin/rabbitmqadmin
RUN service rabbitmq-server start && /usr/local/bin/rabbitmqadmin declare queue name=my-new-queue durable=true && service rabbitmq-server stop

RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15672
CMD rabbitmq-server
FROM rabbitmq:3-management
MAINTAINER 123 "qyb1234@gmail.com"
RUN apt-get update
ENV REFERSHED_AT 2015-07-20
RUN apt-get install -y python
ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin
RUN chmod 755 /usr/local/bin/rabbitmqadmin
RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15672
CMD service rabbitmq-server start && /usr/local/bin/rabbitmqadmin declare queue name=my-new-queue durable=true && service rabbitmq-server stop && rabbitmq-server
======================Dockerfile2===================

FROM rabbitmq:3-management
MAINTAINER 123 "qyb1234@everbridge.com"
RUN apt-get update
ENV REFERSHED_AT 2015-07-20
RUN apt-get install -y python
ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin
RUN chmod 755 /usr/local/bin/rabbitmqadmin
RUN service rabbitmq-server start && /usr/local/bin/rabbitmqadmin declare queue name=my-new-queue durable=true && service rabbitmq-server stop

RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15672
CMD rabbitmq-server
FROM rabbitmq:3-management
MAINTAINER 123 "qyb1234@gmail.com"
RUN apt-get update
ENV REFERSHED_AT 2015-07-20
RUN apt-get install -y python
ADD rabbitmqadmin /usr/local/bin/rabbitmqadmin
RUN chmod 755 /usr/local/bin/rabbitmqadmin
RUN rabbitmq-plugins enable --offline rabbitmq_management
EXPOSE 15672
CMD service rabbitmq-server start && /usr/local/bin/rabbitmqadmin declare queue name=my-new-queue durable=true && service rabbitmq-server stop && rabbitmq-server

当我使用Dockerfile1时,队列没有声明,但是Dockerfile2可以工作。Dockerfile1和Dockerfile2之间的区别是什么

是的,Dockerfile1和Dockerfile2有区别。您在dockerfile2中队列创建之前公开端口15672,在dockerfile1中队列命令之后公开端口15672。 实际上,Rabbitmqadmin使用HTTP API来创建队列、交换等

curl -u guest:guest -XGET http://localhost:15672/api/queues
您将获得所有队列的列表 如果应用命令:

curl -i -u guest:guest -H "content-type:application/json" \  
-XPUT -d'{"type":"direct","durable":true}' \
 http://localhost:15672/api/exchanges/%2f/my-new-exchange
它将创建新的exchange我的新exchange。 如果不公开端口,您将如何创建队列。 有关更多信息,请参阅rabbitmq手册。