Uma imagem de container do Docker é um pacote de software le...

Próximas questões
Com base no mesmo assunto
Q1307782 Engenharia de Software
Uma imagem de container do Docker é um pacote de software leve, independente e executável que inclui tudo o que é necessário para executar uma aplicação. Na criação de um arquivo Dockerfile, a instrução EXPOSE
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: Letra D

Para compreender a questão, é essencial ter conhecimento sobre o Docker, que é uma plataforma de containerização, e sobre o Dockerfile, um arquivo de texto utilizado para automatizar a criação de imagens Docker. O Dockerfile contém uma série de instruções que definem como o container será construído e configurado. Uma dessas instruções é a EXPOSE, que possui uma função específica dentro do Dockerfile.

A instrução EXPOSE é usada para indicar que a aplicação dentro de um container está ouvindo em determinadas portas de rede no momento de sua execução. A alternativa correta, Letra D, afirma que essa instrução documenta quais portas se pretende publicar. Isso significa que a instrução EXPOSE não faz nenhum mapeamento de portas ou exposição ativa de serviços, mas serve como uma informação para quem está executando o container ou para outras ferramentas que utilizam essa informação para configurar o mapeamento de portas de forma adequada. A declaração EXPOSE é, portanto, uma forma de documentar as intenções do desenvolvedor do container e não altera automaticamente a rede ou configurações do host que roda o container.

É importante notar que, para que a porta seja de fato publicada e acessível externamente, é necessário utilizar a opção -p ou --publish ao executar o container com o comando docker run. Somente assim a porta especificada no Dockerfile é mapeada para uma porta do host.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

EXPOSE - Expõe a porta do contêiner. A instrução não faz o mapeamento de porta, apenas deixa explícito que uma determinada porta pode ser mapeada durante a criação do container que utilizar essa imagem. (Por padrão o nginx sobe na porta 80).

Fonte:http://www.macoratti.net/19/01/intro_docker6.htm

b-

The EXPOSE instruction informs Docker that the container listens on the specified network ports at runtime. You can specify whether the port listens on TCP or UDP, and the default is TCP if the protocol is not specified.

https://docs.docker.com/engine/reference/builder/

D: documenta quais portas se pretende publicar.

Para realmente expor e redirecionar portas para o host ou outros contêineres, é necessário utilizar a opção -p ao executar o contêiner.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo