Я использую официальный RabbitMQ Docker изображение (https://hub.docker.com/_/rabbitmq/)Как настроить rabbitmq.config внутри контейнеров Docker?
Я пытался редактировать rabbitmq.config
файл внутри контейнера после запуска
docker exec -it <container-id> /bin/bash
Однако, это, кажется, не имеет никакого эффекта на сервер rabbitmq, работающий в контейнере. Перезагрузка контейнера явно не помогла, так как Docker запускает совершенно новый экземпляр.
Таким образом, я предположил, что единственный способ настроить rabbitmq.config
для контейнера Docker состоял в том, чтобы установить его перед запуском контейнера, который я смог частично выполнить с использованием поддерживаемых переменных среды изображения.
К сожалению, не все параметры конфигурации поддерживаются переменными среды. Например, я хочу установить {auth_mechanisms, ['PLAIN', 'AMQPLAIN', 'EXTERNAL']}
в rabbitmq.config
.
Затем я нашел переменную окружения RABBITMQ_CONFIG_FILE
, которая должна позволить мне указать на файл, который я хочу использовать в качестве моего файла conifg. Тем не менее, я попытался следующие без везения:
docker service create --name rabbitmq --network rabbitnet \
-e RABBITMQ_ERLANG_COOKIE='mycookie' --hostname = "{{Service.Name}}{{.Task.Slot}}" \
--mount type=bind,source=/root/mounted,destination=/root \
-e RABBITMQ_CONFIG_FILE=/root/rabbitmq.config rabbitmq
по умолчанию rabbitmq.config
файл, содержащий:
[ { rabbit, [ { loopback_users, [ ] } ] } ]
является то, что в контейнере, как только он начинает
Какой лучший способ настройки rabbitmq.config
внутри контейнеров-докеров?
Работали шарм. Ура! – AmazingBergkamp
Умный. Благодаря! – bcattle
Я пытаюсь добавить файл конфигурации к своему собственному изображению с помощью 'COPY ./rabbitmq.config/etc/rabbitmq/rabbitmq.config', а затем' CMD ["rabbitmq-server"] ', но кажется, что файл, который я добавляю, перезаписанный конфигурационным файлом по умолчанию. может быть, что файл конфигурации по умолчанию создается командой «rabbit-server» –