
Eu tenho um host (Ubuntu), um contêiner docker (centOS), uma máquina virtual (centOS).
- Meu Host possui 2 interfaces, uma é eth0 "192.168.0.4", a outra é docker0 "172.17.42.1"
- Meu contêiner docker possui IP "172.17.0.1". Possui um link de serviço na porta 80.
- Na Máquina Virtual, uso adaptador bridge com docker0 e configuro o arquivo "/etc/sysconfig/network-scripts/ifcfg-eth0" assim:
DEVICE="eth0"
ONBOOT=yes
HWADDR=08:00:27:72:40:6B
TYPE=Ethernet
BOOTPROTO=static
IPADDR=172.17.0.250
NETMASK=255.255.0.0
Do host, eu faço telnet para o serviço do contêiner
$ telnet 172.17.0.1 80
Trying 172.17.0.1...
Connected to 172.17.0.1.
Escape character is '^]'.
Está tudo bem!
MAS, da máquina virtual não consigo fazer telnet para ela
$ telnet 172.17.0.1 80
Trying 172.17.0.1...
telnet: Unable to connect to remote host: Connection timed out
Da minha máquina virtual, posso executar ping no Docker Container
$ ping 172.17.0.1
PING 172.17.0.1 (172.17.0.1) 56(84) bytes of data.
64 bytes from 172.17.0.1: icmp_seq=1 ttl=64 time=0.091 ms
Então, como fazer telnet para meu serviço no Docker Container?