2
respostas

[Dúvida] É possível realizar a alteração de portas com o container em execução?

Boa noite!
Sou iniciante em docker e estou acompanhando o curso, que por sinal é muito bom.
Porém me veio a dúvida se é possível alterar realizar a alteração de portas com o container em execução, ou devo sempre remover o container e configurar na hora de executar?

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
2 respostas

Oii, Alessandro.

É possível alterar as portas de um container que já está em execução?

Não, não é possível alterar o mapeamento de portas de um container que já está rodando.
O Docker não permite atualizar as portas expostas ou publicadas depois que o container foi criado.

Isso acontece porque o mapeamento de portas faz parte da configuração de rede do container, determinada no momento da criação. Uma vez iniciado, o container mantém essa configuração até ser removido.

Então como alterar as portas?

A única forma é:

  1. Parar o container (se ainda estiver em execução)

    docker stop <id-ou-nome>
    
  2. Remover o container

    docker rm <id-ou-nome>
    
  3. Criar um novo container com o mapeamento desejado, por exemplo:

    docker run -d -p 8080:80 nome-da-imagem
    

Esse processo é normal no Docker. Containers são pensados como recursos efêmeros, fáceis de descartar e recriar.

E se eu não quiser perder dados ao recriar o container?

Se o container tiver arquivos ou dados importantes, a prática correta é usar:

  • Volumes (para persistir dados)
  • Bind mounts (para usar diretórios do host)

Assim, você pode remover e recriar quantas vezes quiser sem perder nenhum conteúdo.

Exemplo simples com volume:

docker run -d -p 8080:80 -v meu-volume:/usr/share/nginx/html nginx

Recriando o container, o volume permanece intacto.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

Obrigado pela resposta, Lorena, também era uma dúvida minha!