【问题标题】:Keep Rabbitmq running in Docker container保持 Rabbitmq 在 Docker 容器中运行
【发布时间】:2018-07-24 21:07:06
【问题描述】:

我用 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(我现在不能做什么)?

谢谢。

【问题讨论】:

  • 为什么不直接使用the standard rabbitmq image?据我所知,它为您尝试做的所有事情提供了开箱即用的设置。
  • 因为我需要使用同事制作的自定义图像。这是我有义务做的一件事。

标签: docker rabbitmq dockerfile


【解决方案1】:

我不知道为什么 Docker 不能启动这个……但是 Kubernetes 可以。这对我来说已经足够了。如果有人知道为什么,我想听听。但实际上,我会更深入地进行测试。

感谢您的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-27
    • 1970-01-01
    • 1970-01-01
    • 2021-09-16
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多