Diferença entre expor e portas no docker compor

Diferença entre expor e portas no docker compor
Docker Compose é um componente central do Docker que é freqüentemente utilizado para configurar o aplicativo executado em vários contêineres. O Docker-Compose é utilizado principalmente para configurar os serviços de contêineres no “Yaml" arquivo. As teclas diferentes são usadas na configuração do serviço, “expor" e "portas”São utilizados especificamente para especificar a porta exposta para contêineres.

Este artigo explicará a diferença entre as portas e exporá a chave no Docker Compose.

Diferença entre expor e portas no docker compor

O "expor" e "portas”As chaves no Docker Compose são utilizadas para configurar a rede e as portas expostas para o contêiner. No entanto, ambas as chaves são usadas para o mesmo propósito, mas a principal diferença entre as "portas" e "expor" é que a chave exposta é acessível aos serviços conectados à mesma rede, mas não no host. Por outro lado, as portas são acessíveis e publicadas no host, bem como na rede conectada.

Verificando a diferença entre "expor" e "portas" teclas no Docker-Compose praticamente

Para verificar a diferença entre a chave Expose e as portas praticamente, siga os exemplos listados:

  • Utilizar “portas"Chave no arquivo Docker-Compose
  • Utilizar “expor"Chave no arquivo Docker-Compose

Exemplo 1: Utilize a tecla “portas” no arquivo Docker-Compose

O "portas”A chave é utilizada para publicar o contêiner na máquina host. Esses contêineres são acessíveis a todos os serviços que estão executando no host também em uma rede conectada.

Para usar a tecla "portas" no Docker Compose, confira as instruções fornecidas.

Etapa 1: Crie um “Docker-Compose.yml ”

Fazer um “Docker-Compose.yml”Arquive e cola o bloco de código abaixo no arquivo:

Versão: "3"
Serviços:
rede:
Imagem: Nginx: mais recente
Portas:
- 8080: 80

De acordo com o trecho acima:

  • ““rede”O serviço está configurado no“Docker-Compose.yml" arquivo.
  • ““imagem”Define a imagem base do contêiner de composição
  • ““portas”Especifique a porta exposta do contêiner em uma rede e host:

Etapa 2: Iniciar recipientes

Em seguida, crie e inicie o contêiner de composição com a ajuda de “Docker-compor”Comando:

> Docker -compose up -d

Etapa 3: Lista compor contêiner

Liste o contêiner e verifique a porta exposta do contêiner. A partir da saída, pode observar que publicamos o contêiner no host:

> Docker-compor ps

Exemplo 2: Utilize a tecla "Exponha" no arquivo Docker-Compose

Para utilizar a chave expor na “Docker-Compose.yml”Arquivo, dê uma olhada nas instruções fornecidas.

Etapa 1: Crie um “Docker-Compose.yml ”

Agora, configure o “rede”Serviço para expor a porta 80 com a ajuda do“expor" chave. Aqui, não definimos nenhuma rede para o contêiner:

Versão: "3"
Serviços:
rede:
Imagem: Nginx: mais recente
expor:
- 8080: 80

Etapa 2: disparar o contêiner

Em seguida, crie e inicie o contêiner de composição para executar o serviço da web usando o comando fornecido:

> Docker -compose up -d

Etapa 3: Lista compor contêiner

Liste o contêiner de composição e verifique a porta exposta do contêiner. Na saída abaixo, você pode observar que o contêiner está acessível apenas na porta 80 em uma rede selecionada padrão, mas não no host:

> Docker-compor ps

Nós definimos a distinção de “expor" e "portas"Chaves no docker compor.

Conclusão

O "expor" e "portas”Ambos são usados ​​para especificar a porta exposta do contêiner para executar serviços definidos. A principal diferença entre essas duas chaves é que os "portos" são publicados e acessíveis na máquina host e também na rede especificada, enquanto "expor" é publicado apenas na rede definida e acessada por serviços que estão sendo executados na mesma rede. Esta redação demonstrou a distinção entre "portas" e "expor" no Docker Compose.