#docker #rabbitmq
#docker #rabbitmq
Вопрос:
Пытаюсь установить и настроить rabbitmq внутри контейнера docker. Те же шаги отлично работают на хосте. Но внутри контейнера docker «завершение работы rabbitmqctl» просто зависает там вместе с сообщением. Я застрял на этом в течение нескольких недель. Очень нужно решить эту проблему, чтобы я мог двигаться вперед. Я отправлю подарочную карту Amazon всем, кто может помочь решить проблему!!!!
Shutting down RabbitMQ node rabbit@dev_moog running at PID 13039
Waiting for PID 13039 to terminate
ps -ef показывает процесс с именем «[beam] «, я пытался его уничтожить. Он не умрет.
ps -ef |egrep "13039|rabbitmqctl" |grep -v grep
moogsoft 13039 1 0 19:15 ? 00:00:03 [beam] <defunct>
moogsoft 15137 12765 0 19:15 pts/0 00:00:00 /home/moogsoft//cots/erlang/lib/erlang/erts-8.3/bin/beam.smp -B -- -root /home/moogsoft//cots/erlang/lib/erlang -progname erl -- -home /home/moogsoft -- -boot start_clean -noshell -noinput -noshell -hidden -smp enable -kernel inet_dist_listen_min 35672 -kernel inet_dist_listen_max 35682 -sasl errlog_type error -mnesia dir "/home/moogsoft/var/lib/rabbitmq/mnesia/rabbit@dev_moog" -run escript start -escript main rabbitmqctl_escript -extra /home/moogsoft/cots/rabbitmq-server/escript/rabbitmqctl shutdown
Комментарии:
1. Вам не нужно запускать подобные команды внутри контейнера (обычно вам вообще не нужна оболочка внутри контейнера). Просто
docker stop
иdocker rm
контейнер.2. Это часть процесса сборки образа docker. Я пытаюсь создать изображение с помощью rabbitmq для создания изображения. Так что это часть установки приложения, которое вы собираетесь использовать.
3. Обычно вы запускаете RabbitMQ и другие (длительные, с отслеживанием состояния) процессы поддержки в отдельных контейнерах. Используйте такой инструмент, как Docker Compose, для запуска
rabbitmq
контейнера вместе с контейнером вашего приложения. Не пытайтесь упаковывать или запускать несколько объектов в одном контейнере.