O Docker pode ler instruções através de um arquivo texto qu...
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?
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