ANÚNCIO

~/questoes/devops

Qual comando Docker é utilizado para criar uma nova rede compartilhada entre containers?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Para fixar

Criando Redes Compartilhadas entre Containers Docker

Conceito central

O Docker network é um recurso que permite criar uma rede dedicada para conectar múltiplos containers, possibilitando que eles se comuniquem usando nomes de host em vez de endereços IP. Isso é essencial quando você precisa que serviços como uma API e um banco de dados conversem entre si de forma confiável e profissional.

Por que essa resposta faz sentido

O comando `docker network create nome_da_rede` é o jeito correto de criar uma rede customizada no Docker. Depois de criada, você pode conectar containers a essa rede durante a sua inicialização, permitindo que eles se descubram mutuamente pelo nome do container.

Armadilhas comuns

  • Confundir o comando `docker network create` com `docker compose network`, pensando que são equivalentes quando na verdade têm propósitos diferentes.
  • Tentar conectar containers usando localhost ou endereços IP fixos em vez de utilizar a rede Docker, o que causa falhas de conexão intermitentes.
  • Esquecer de especificar qual rede o container deve usar no momento de sua inicialização, deixando-o na rede padrão e impossibilitando a comunicação com outros serviços.

Entenda as alternativas

A

O `docker compose network` não é um comando válido. Embora o Docker Compose trabalhe com redes, a sintaxe correta para criar redes manualmente é diferente e usa o comando `docker network`.

B

Este é o comando correto. `docker network create nome_da_rede` cria uma nova rede bridge customizada que permite a comunicação entre containers conectados a ela.

C

O `docker run` é usado para iniciar containers, não para criar redes. A sintaxe está completamente incorreta e tentaria executar um container em vez de criar uma rede.

D

O `docker create bridge` não é um comando válido. Aunque `bridge` é o tipo padrão de rede no Docker, você não cria redes usando `docker create bridge`; deve usar `docker network create`.

Dica prática: Depois de criar a rede com `docker network create minha_rede`, use `docker run --network minha_rede` para conectar seus containers. Na sua aplicação, acesse o MongoDB usando o nome do container (por exemplo, `mongodb:27017`) em vez de `localhost:27017`.

Revise pensando: Se você precisa conectar uma API a um banco de dados MongoDB em containers separados, qual comando você executa primeiro para preparar a infraestrutura de rede?