Я запускаю докер-контейнер с RabbitMQ для тестирования. Я хотел бы запустить второй контейнер, который выполняет короткую команду и проверяет, действительно ли Rabbitmq запущен. Второй контейнер должен блокировать мой конвейер сборки до тех пор, пока он не определит, что RabbitMQ успешно запущен в первом контейнере.
Как я могу указать rabbitmqctl
, какое имя хоста использовать для получения статуса RabbitMq? Я связываю два контейнера вместе через докер, поэтому проблемы с портом не должны быть проблемой.
Пример:
rabbitmqctl -n rabbitmq status # does not work, prints diagnostic info
Состояние узла rabbitmq @ rabbitmq ... Ошибка: невозможно выполнить операцию на узле rabbitmq @ rabbitmq. См. Информацию о диагностике и предложения ниже.
Наиболее частые причины этого:
- Целевой узел недоступен (например, из-за разрешения имени хоста, проблем с TCP-соединением или брандмауэром)
- Инструмент CLI не может аутентифицироваться на сервере (например, из-за того, что файл cookie Erlang инструмента CLI не соответствует файлу сервера)
- Целевой узел не запущен
В дополнение к диагностической информации ниже:
- См. Руководства по интерфейсу командной строки, кластеризации и сети на странице http://rabbitmq.com/documentation.html, чтобы узнать более
- Просмотрите журналы сервера на узле rabbitmq @ rabbitmq
ДИАГНОСТИКА
пытался связаться с: [rabbitmq @ rabbitmq]
rabbitmq @ rabbitmq: * подключен к epmd (порт 4369) на rabbitmq * epmd сообщает: узел 'rabbitmq' не работает на всех других узлах на rabbitmq: [rabbit] * предложение: запустить узел
Сведения о текущем узле: * имя узла: rabbitmqcli52 @ e3ea1e73df02 * эффективный домашний каталог пользователя: / var / lib / rabbitmq * хэш файла cookie Erlang: AB9AFN3zvcyAWBl6ZVVOJw ==
rabbit@rabbitmq
?rabbitmq
Имя вашего контейнера, а также имя изображения? - person vmonteco   schedule 09.02.2018docker exec -ti rabbitmq rabbitmqctl status
? Если нет, попробуйте опубликовать результат. - person vmonteco   schedule 09.02.2018