O Docker pode ler instruções através de um arquivo texto qu...

Próximas questões
Com base no mesmo assunto
Q1645248 Engenharia de Software
O Docker pode ler instruções através de um arquivo texto que contém instruções para montar uma imagem (dockerfile).
Nesse contexto, qual a palavra-chave ou instrução que indica ao docker a porta que o container deve utilizar em tempo de execução?
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C - EXPOSE.

O Docker é uma ferramenta muito popular para a criação e gestão de containers. Um container é uma unidade padrão de software que empacota o código e todas as suas dependências de modo que a aplicação roda de forma rápida e confiável de um ambiente de computação para outro.

Para construir uma imagem Docker, utilizamos um arquivo chamado Dockerfile, que contém uma série de instruções para o Docker construir a imagem do container. Cada instrução no Dockerfile adiciona uma nova camada à imagem, e cada camada é uma modificação da imagem que fica salva de forma incremental.

Quanto à questão das portas, frequentemente queremos que nosso container seja acessível através da rede. Isto é geralmente feito mapeando uma porta do host para uma porta do container. No Dockerfile, a instrução EXPOSE é utilizada para informar ao Docker que o container vai escutar em portas específicas em tempo de execução. Embora essa instrução não publique a porta por si só, ela funciona como um tipo de documentação entre a pessoa que constrói a imagem e a pessoa que a roda, para indicar quais portas o container estará escutando.

Portanto, a alternativa correta é a C - EXPOSE, pois é a instrução que desempenha a função de indicar as portas que estarão disponíveis no container. As outras opções não representam instruções válidas no contexto de um Dockerfile para essa finalidade específica.

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

https://www.whitesourcesoftware.com/free-developer-tools/blog/docker-expose-port/#:~:text=You%20can%20do%20this%20in,string%20to%20publish%20a%20port

LETRA C

Pode-se dizer que em 95% dos casos as seguintes diretivas são utilizadas em um Dockerfile:

  • ADD: Adiciona um arquivo ou diretório do sistemas de arquivo local para a imagem;
  • COPY: Copia arquivos remotos e/ou locais para a imagem.
  • CMD: Comando padrão a ser executado pela imagem;
  • ENTRYPOINT: Permite configurar o contêiner ou apenas definir o comando a ser executado (Sobrepõe o CMD);
  • ENV: Define variáveis de ambiente;
  • EXPOSE: Informa ao docker que uma porta da rede do contêiner está disponível;
  • FROM: Inicia a imagem a partir de outra imagem: Ex “FROM debian:8”;
  • RUN: Roda um comando no sistema operacional da imagem;
  • ARG: Define variáveis de ambiente, mas permite que no momento da construção da imagem seja passado o valor para a variável específicada. Útil para quando se deseja permitir que o usuário construa imagens para mais de uma versão do mesmo software usando o mesmo DockerFile.

Fonte: https://docker-unleashed.readthedocs.io/aula1.html

@rodolfodalves

c-

At times, you may need to set out some networking rules to enable smooth interaction between containers in multi-container applications or make your Docker ports accessible by services in the outside world.

You can do this in the following ways:

   Add an EXPOSE instruction in the Dockerfile

   Use the –expose flag at runtime to expose a port

   Use the -p flag or -P flag in the Docker run string to publish a port

https://www.whitesourcesoftware.com/free-developer-tools/blog/docker-expose-port/

https://docs.docker.com/engine/reference/builder/#:~:text=A%20Dockerfile%20is%20a%20text,can%20use%20in%20a%20Dockerfile%20.

Clique para visualizar este comentário

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