У меня есть контейнер с Dockerfile следующим образом:Докер - не в состоянии TelNet Связанный контейнер
...
FROM ubuntu:latest
MAINTAINER arpitaggarwal "[email protected]"
EXPOSE 8080
и другой контейнер B с Dockerfile следующим образом:
...
FROM ubuntu:latest
MAINTAINER arpitaggarwal "[email protected]"
RUN apt-get install -q -y mysql-server
EXPOSE 3306
Тогда я запустил контейнер B с использованием команды:
docker run -P -it --name db B /bin/bash
И выполнив команду: docker run --rm --name web --link db A env
дает мне ниже выхода:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=a5dd66b72ca8
DB_PORT=tcp://172.17.0.2:3306
DB_PORT_3306_TCP=tcp://172.17.0.2:3306
DB_PORT_3306_TCP_ADDR=172.17.0.2
DB_PORT_3306_TCP_PORT=3306
DB_PORT_3306_TCP_PROTO=tcp
DB_NAME=/web/db
HOME=/root
Затем я вошел в контейнер и запустить команду: пинг дб
, который дает мне
PING db (172.17.0.2) 56(84) bytes of data.
64 bytes from db (172.17.0.2): icmp_seq=1 ttl=64 time=0.082 ms
64 bytes from db (172.17.0.2): icmp_seq=2 ttl=64 time=0.063 ms
64 bytes from db (172.17.0.2): icmp_seq=3 ttl=64 time=0.065 ms
64 bytes from db (172.17.0.2): icmp_seq=4 ttl=64 time=0.061 ms
64 bytes from db (172.17.0.2): icmp_seq=5 ttl=64 time=0.066 ms
И когда я попытался telnet
команду с портом 3306, следующим образом:
telnet 172.17.0.2 3306
дает мне выход:
[email protected]:/# telnet 172.17.0.2 3306
Trying 172.17.0.2...
telnet: Unable to connect to remote host: Connection refused
Любая идея, как я могу TelNet связанный контейнер?
Любая помощь будет оценена!
И вы уверены, что MySQL правильно установлен в B и прослушивает внешние соединения на порту? –
Я установил mysql-клиент, выполнил вход в mysql-сервер и выполнил операции запроса, а также для внешних подключений. Я не уверен. – Arpit