保持Rabbitmq在Docker容器中运行

时间:2018-07-24 21:07:07

标签: docker rabbitmq dockerfile

我用Dockerfile制作了Docker映像。我使用RUN命令安装Rabbitmq:

&& dnf -y --nogpgcheck install rabbitmq-server \
&& rabbitmq-plugins enable rabbitmq_management \

我试图在supervisord.d /中创建一个.ini文件,甚至复制并启动容器中的脚本,以便Rabbitmq可以启动,添加新用户并一直运行。但是当我启动容器时,Rabbitmq没有运行。

init.sh文件(如果我在进入容器后手动运行它,它将很好地工作):

(
rabbitmq-server start & \
sleep 5 ; \
rabbitmqctl add_user admin mypass 2>/dev/null ; \
rabbitmqctl set_user_tags admin administrator ; \
rabbitmqctl set_permissions -p / admin  ".*" ".*" ".*" ;
)

现在,supervisord.d / rabbitmq-server.ini文件:

[program:rabbitmq-server]
;directory=/usr/local/
command=/sbin/rabbitmq-server -D
autostart=true
autorestart=true
startsecs=10
redirect_stderr=true
priority=990

注意:我也将rabbitmq.config文件复制到了容器中以更改监听端口。

我如何继续拥有这些新端口并像以前一样添加此新用户,并在容器启动时设法运行Rabbitmq(目前无法执行此操作)?

谢谢。

1 个答案:

答案 0 :(得分:0)

我不知道为什么Docker无法启动它……但是Kubernetes做到了。这对我来说就足够了。如果有人知道为什么,我想听听。但是实际上,我将进一步进行测试。

谢谢您的帮助。