Привет, У меня есть требование подключить три контейнера докеров, чтобы они могли работать вместе. Я называю эти три контейнера, какСоединение отказано в контейнерах Докера, сообщающихся через открытые порты
- контейнер 1 - ПГА (Apache веб-сервер на порт 80)
- контейнера 2 - сервер (Apache Айравата сервер на порту 8930)
- контейнера 3 - кролика (RabbitMQ в порту 5672)
Я начал RabbitMQ как (контейнер 3)
docker run -i -d --name rabbit -p 15672:15672 -t rabbitmq:3-management
Я начал сервер (со ntainer 2), как
docker run -i -d --name server --link rabbit:rabbit --expose 8930 -t airavata_server /bin/bash
Теперь от внутреннего сервера (контейнер 2) Я могу получить доступ кролика (контейнер 3) в порту 5672. Когда я пытаюсь
nc -zv container_3_port 5672
это говорит соединение успешно.
До этого момента я доволен подключением докеров по ссылке. Теперь я создал еще один контейнер ПГК (контейнер 1) в качестве
docker run -i -d --name pga --link server:server -p 8080:80 -t psaha4/airavata_pga /bin/bash
Теперь внутри нового ПГК контейнера, когда я пытаюсь получить доступ к службе сервера (контейнера 2) его говоря связь отказаться.
Я проверил, что изнутри службы контейнерного контейнера работает на порту 8930, и он был открыт при создании контейнера, но все же отказался от подключения из других контейнеров, к которым он связан.
Я не мог найти подобную ситуацию, описанную кем угодно, и также не знаю, как отлаживать ее. Пожалуйста, помогите мне найти способ.
Выход команды: докер Exec сервер Lsof -i: 8930
exec: "lsof": executable file not found in $PATH Cannot run exec command fb207d2fe5b902419c31cb8466bcee4ba551b097c39a7405824c320fcc67f5e2 in container 995b86032b0421c5199eb635bd65669b1aa93f96b60da4a49328050f7048197a: [8] System error: exec: "lsof": executable file not found in $PATH Error starting exec command in container fb207d2fe5b902419c31cb8466bcee4ba551b097c39a7405824c320fcc67f5e2: Cannot run exec command fb207d2fe5b902419c31cb8466bcee4ba551b097c39a7405824c320fcc67f5e2 in container 995b86032b0421c5199eb635bd65669b1aa93f96b60da4a49328050f7048197a: [8] System error: exec: "lsof": executable file not found in $PATH
Вы можете отредактировать свой вопрос с помощью вывода 'docker exec server lsof -i: 8930'? – Thomasleveil