Eu encontrei este mesmo problema, exceto que eu tinha dois containers conectados com --link, então --net = host não trabalharia para esse situtaiton.
Ao fazer uma porta ssh para o host remoto usando ssh -R 9000:localhost:9000 server
, um lsof -P -i -n
pode mostrar que a porta está ligada ao dispositivo loopback dos servidores, que se parece com isso:
sshd 39172 ubuntu 9u IPv4 2941407 0t0 TCP ::1:9000 (LISTEN)
Essa interface de loopback não está disponível para a rede dentro do contêiner docker. Eu remediei isso adicionando GatewayPorts yes
ao arquivo sshd_config no servidor e reiniciando o sshd.
A porta encaminhada 9000 é então ligada à interface normal e disponível a partir do interior do contêiner docker. (e de qualquer outro host para esse assunto).