gpt4 book ai didi

docker - 在docker中使用rabbitmqadmin

转载 作者:行者123 更新时间:2023-12-02 01:32:58 24 4
gpt4 key购买 nike

================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

==============Dockerfile2===================

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

它将创建新的交换 my-new-exchange。在不公开端口的情况下,您将如何创建队列? 。欲了解更多信息,您可以阅读rabbitmq手册。 http://hg.rabbitmq.com/rabbitmq-management/raw-file/3646dee55e02/priv/www-api/help.html

关于docker - 在docker中使用rabbitmqadmin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31530239/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com