Você está sugerindo que não usou docker-compose
para iniciá-lo, mas um docker run
normal. Eu procuraria docker-compose
, porque então você poderia ter parado e iniciado novamente com um novo arquivo de configuração. Isso permite criação reproduzível de um contêiner. Todos os exemplos de como usar docker run
em todos os lugares não ajudam em nada.
No seu caso particular, acho que tudo o que você precisa fazer é adicionar uma regra iptables
. Por padrão, dockerd
manipula as regras iptables
para redirecionar o tráfego (pode até ser a única coisa que o EXPOSE
faz). Se você fizer iptables -t nat -L -n
, provavelmente poderá ver como suas portas foram expostas. Você pode criar uma regra semelhante.
Isso significa que, quando você reinicia o servidor, a regra desaparece novamente. Você terá que salvar seu estado iptables
. E isso, então, também afeta a inconveniência de dockerd
manipular iptables
. É difícil gerenciá-lo junto a outros serviços que acessam o iptables (como sistemas de configuração central, fail2ban
ou até mesmo um simples salvamento automático de suas regras).