Este artigo irá detalhar o que o “ –net=host ” faz no comando Docker.
O que a opção “–net=host” faz no comando Docker?
O ' -líquido ” na opção “ docker run ” é utilizado para especificar a rede para o contêiner do Docker. Por padrão, os contêineres são executados na rede de ponte. No entanto, o ' –net=host ” pode ser utilizada para executar o contêiner na rede host. Ele fornece ao contêiner do Docker mais acesso à rede do que normalmente teria.
Como executar o comando “docker run” com e sem a opção “–net=host”?
Para verificar a diferença entre contêineres em execução na rede padrão e na rede host, observe os exemplos listados:
- Use o ' docker run ” Comando sem o “ –net-host ” Opção.
- Use o ' docker run ” Comando com o “ –net-host ” Opção.
Como usar o comando “docker run” sem a opção “–net-host”?
Por padrão, a plataforma Docker fornece três redes: “ ponte ”, “ hospedar ', e ' nenhum ”. Para listar todas as redes, veja o exemplo abaixo:
> rede docker ls
Quando o contêiner é executado sem especificar nenhuma rede, por padrão, ele usará a rede de ponte. Para a demonstração, confira as etapas abaixo.
Passo 1: Faça um Dockerfile
Faça um Dockerfile para conteinerizar o “ golang ” programa e cole as instruções dadas no arquivo:
DE golang: 1.8
WORKDIR / ir / origem / aplicativo
COPIAR main.go .
CORRE vai construir -o servidor web .
EXPOR 8080 : 8080
CMD [ './servidor web' ]
Etapa 2: criar imagem do Docker
Em seguida, gere a imagem do Dockerfile com a ajuda do comando fornecido. O ' -t ” no comando abaixo especifica o nome da imagem:
> compilação do docker -t go-img .
Passo 3: Executar o Docker Container
Utilize o “ docker run ” para executar o contêiner na rede selecionada padrão. O ' -d ” opção executa o contêiner no modo desanexado:
> docker run -d go-img
Agora, liste o container e verifique se o container é executado na rede padrão ou não:
> janela de encaixe PS -a Se a saída mostrar qualquer porta de exposição como “ tcp/
Na saída acima, você pode ver que nosso contêiner está sendo executado na rede padrão selecionada “ ponte ”.
Como usar o comando “docker run” com a opção “–net-host”?
Para executar o contêiner na rede host, utilize o comando “ –net=host ” como mostrado abaixo:
> docker run -d --líquido =host go-img
Para a verificação, liste todos os contêineres. Aqui, nenhuma saída é mostrada no “ portas ” coluna, o que significa que nosso contêiner está processando na rede host e pode ser acessado em qualquer porta da rede host:
> janela de encaixe PS -a
Isso é tudo sobre o que o “ –net=host ” faz e como usá-la no Docker.
Conclusão
O ' –net=host ” é utilizada para executar o contêiner do Docker na rede do host. Se esta opção não for especificada no “ docker run ” comando, seu contêiner médio será executado na rede de ponte. Para executar o contêiner no host, utilize o comando “ docker run –net=opção