Невозможно удалить пользователя по умолчанию, пароль и Vhost - RabbitMQ Dockerfile - PullRequest
0 голосов
/ 17 марта 2020

Я пытаюсь написать Dockerfile, который копирует пользовательский conf и устанавливает для пользователя по умолчанию, пароль и vhost значение, отличное от / guest guest. Сначала я попробовал с переменными среды, но когда я вошел в интерфейс управления, все вещи по умолчанию все еще там!

Затем я попытался выдать CMD, и он все еще не работает:

FROM rabbitmq:3.8.2-management

#ENV RABBITMQ_DEFAULT_USER=test
#ENV RABBITMQ_DEFAULT_PASS=test
#ENV RABBITMQ_DEFAULT_VHOST=test

COPY rabbitmq.conf /etc/rabbitmq/rabbitmq.conf

CMD ["sh", "-c", "rabbitmq-plugins enable rabbitmq_auth_backend_http; rabbitmq-server", "rabbitmqctl add_user test test", "rabbitmqctl set_user_tags test administrator", "rabbitmqctl delete_user guest", "rabbitmqctl delete_vhost /", "rabbitmqctl add_vhost testvhost", "rabbitmqctl set_permissions -p test testvhost \".*\" \".*\" \".*\""]

Я обнаружил, что если я bash в контейнере после его запуска и запуска rabbitmqctl add_user test test, он добавляет нового пользователя.

Что я делаю не так?

1 Ответ

0 голосов
/ 17 марта 2020

Это выглядит так, как будто я переопределяю conf своей собственной конфигурацией в /etc/rabbitmq/rabbitmq.conf, переменные ENV, похоже, не влияют на значения по умолчанию user, password и vhost.

Мое решение состояло в том, чтобы поместить их в мою конфигурацию:

loopback_users.guest = false
listeners.tcp.default = 5672
management.listener.port = 15672
default_user = test
default_pass = test
default_vhost = test

Я надеюсь, что это поможет кому-то еще в этой ситуации.

...