

Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.


Seu próximo nível começa aqui
Com a Assinatura Ilimitada, você tem tudo que precisa para sua aprovação.
Com a Assinatura Ilimitada, você combina prática, teoria e método em uma única assinatura com tudo que você precisa para sua aprovação.
A respeito de imagens e contêineres Docker, assinale a alternativa correta.
Contêineres são imutáveis e compostos por uma ou mais camadas de somente leitura.
Imagens são imutáveis e compostas por uma ou mais camadas de somente leitura e uma camada de leitura e escrita.
Imagens são mutáveis em tempo de execução e compostas por uma ou mais camadas de somente leitura e uma camada de leitura e escrita.
Contêineres são mutáveis em tempo de execução e compostos por uma ou mais camadas de somente leitura e uma camada de leitura e escrita.
Considere a seguinte situação hipotética:
Uma equipe de engenharia DevOps está implementando o processo de implantação automatizada de uma aplicação web como parte de um pipeline de entrega contínua. A aplicação é executada em um ambiente “conteinerizado”, composto por uma stack de serviços formada por um servidor NGINX, responsável pelo atendimento das requisições HTTP, um serviço PHP-FPM, que executa a lógica da aplicação, bem como por um banco de dados MySQL, responsável pela persistência das informações.
A orquestração desses componentes está sendo realizada por meio de um arquivo docker-compose.yml, no qual cada serviço é executado em um contêiner distinto.
Durante testes de inicialização do ambiente, a equipe observou que, em algumas execuções do comando docker compose up, o contêiner da aplicação tenta estabelecer conexão com o banco de dados antes que o serviço MySQL esteja completamente pronto para aceitar conexões, ocasionando falhas temporárias durante o bootstrap da aplicação.
Considere o trecho do arquivo docker-compose.yml utilizado pela equipe:

Fonte: dados do elaborador
Considerando o funcionamento do Docker Compose, bem como as boas práticas relacionadas à inicialização de serviços, resiliência de contêineres e gerenciamento seguro de credenciais, analise as afirmativas a seguir.
I. A diretiva depends_on presente no serviço app garante a ordem de inicialização dos contêineres, mas não assegura que o banco de dados esteja completamente pronto para aceitar conexões.
II. A utilização da variável ${MYSQL_ROOT_PASSWORD} no arquivo docker-compose.yml elimina os riscos de exposição de credenciais, sendo considerada equivalente ao uso de Docker Secrets em termos de segurança.
III. A política restart: on-failure definida no serviço app permite que o contêiner seja reiniciado automaticamente caso o processo principal termine com erro, contribuindo para a resiliência da aplicação em cenários de falhas transitórias.
IV. O uso de Docker Secrets é geralmente considerado mais seguro que variáveis de ambiente para armazenamento de credenciais sensíveis, pois os segredos podem ser gerenciados separadamente da configuração da aplicação e não ficam expostos diretamente no ambiente do contêiner.
V. A definição de um healthcheck no serviço db permite verificar periodicamente se o banco MySQL está operacional e possibilita identificar quando o serviço está efetivamente pronto para receber conexões.
Assinale a alternativa CORRETA:
Apenas as afirmativas I, II e IV estão corretas.
Apenas as afirmativas I, III e IV estão corretas
Apenas as afirmativas I, III, IV e V estão corretas.
Apenas as afirmativas II e V estão corretas
Em arquiteturas modernas baseadas em contêineres, aplicações web frequentemente são executadas em múltiplos serviços isolados. Um padrão comum consiste em utilizar NGINX como servidor web e proxy reverso, encaminhando requisições PHP para um contêiner que executa PHP-FPM, enquanto o banco de dados MySQL é executado em outro contêiner dentro da mesma rede Docker.
Considere o seguinte Dockerfile, utilizado para construir a imagem da aplicação PHP:

Fonte: dados do elaborador
Considere ainda que o contêiner do NGINX está configurado para encaminhar requisições PHP ao serviço php na porta 9000, por meio de FastCGI, em uma rede Docker compartilhada.
Com base nos conceitos de contêineres Docker, comunicação entre serviços, volumes persistentes e boas práticas de construção de imagens, analise as afirmativas a seguir.
I. A instrução EXPOSE 9000 documenta a porta utilizada pelo contêiner e indica que o serviço escuta nessa porta, mas não publica automaticamente essa porta no host.
II. A comunicação entre os contêineres NGINX e PHP-FPM ocorre diretamente pelo nome do serviço (por exemplo, fastcgi_pass php:9000), desde que ambos estejam conectados à mesma rede Docker.
III. A declaração VOLUME ["/var/www/html/uploads"] permite que dados gerados pela aplicação, como arquivos enviados por usuários, sejam persistidos independentemente do ciclo de vida do contêiner.
IV. Para que o serviço php-fpm seja acessível a partir de outro contêiner na mesma rede Docker, é obrigatório que a porta seja publicada no host, utilizando a opção -p ou a diretiva ports no Docker Compose.
V. A instrução CMD ["php-fpm"] define o processo principal do contêiner, responsável por manter o contêiner em execução e processar requisições FastCGI encaminhadas pelo servidor NGINX.
Assinale a alternativa CORRETA:
Apenas as afirmativas II, III, IV e V estão corretas.
Apenas as afirmativas I, II, III e V estão corretas.
Apenas as afirmativas I, III e IV estão corretas.
Apenas as afirmativas II, IV e V estão corretas.
Considere o seguinte trecho de um arquivo docker-compose.yml utilizado para orquestrar uma aplicação web:

Acerca do cenário apresentado, avalie as sentenças a seguir:
O uso de condition: service_healthy no depends_on garante que o serviço web só será iniciado após o serviço db estar marcado como saudável.
PORQUE
O health check do web impede que o container seja considerado "running" até que o endpoint /health esteja acessível, o que evita falhas de inicialização.
Acerca dessas sentenças, assinale a alternativa CORRETA.
As duas sentenças são verdadeiras, e a segunda é uma justificativa correta da primeira.
As duas sentenças são verdadeiras, mas a segunda não é uma justificativa correta da primeira.
A primeira sentença é verdadeira, e a segunda é falsa.
A primeira sentença é falsa, e a segunda é verdadeira.
O Docker permite a interação com seus aplicativos Docker Compose por meio do comando docker compose e seus subcomandos. Considerando esse contexto, marque a alternativa que representa a ação provocada pelo comando docker compose ps:
Iniciar todos os serviços definidos no arquivo compose alvo.
Listar todos os serviços junto com seu status atual.
Monitorar a saída dos contêineres em execução.
Remover os serviços em execução.


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
O Docker Compose é uma ferramenta utilizada para orquestrar múltiplos containers com base em um arquivo YAML, facilitando a definição e a execução de ambientes complexos.
Certo
Errado
Sobre o Docker e a conteinerização, assinale a alternativa correta.
As imagens Docker são mutáveis, permitindo alterações diretas e permanentes em sua estrutura sem necessidade de recriação.
O Docker Compose é utilizado para definir e orquestrar múltiplos contêineres por meio de um arquivo YAML, facilitando o gerenciamento de serviços que precisam trabalhar em conjunto.
O Docker substitui totalmente os sistemas de virtualização tradicionais, oferecendo o mesmo nível de isolamento de hardware que uma máquina virtual.
O Dockerfile é usado apenas para executar contêineres já criados, não tendo relação com a criação de novas imagens.
O Compose é restrito ao sistema operacional Windows e não pode ser utilizado em ambientes Linux.
Em um projeto de desenvolvimento que utiliza Docker Compose, é comum organizar múltiplos serviços dentro de um arquivo docker-compose.yml ou compose.yaml. Para que esses serviços possam interagir entre si de forma transparente, o Docker adota uma configuração de rede padrão que define como a comunicação ocorrerá entre os contêineres do projeto. Nesse contexto, marque a opção que apresenta a forma como essa comunicação acontece por padrão.
Eles utilizam a rede host, compartilhando a interface de rede do host e se comunicando por meio de portas diferentes no mesmo IP.
Eles se comunicam através do localhost, pois compartilham o mesmo namespace de rede do host.
Eles são colocados automaticamente em uma única rede bridge, criada especificamente para o projeto, permitindo a comunicação usando os nomes dos serviços como hostnames.
É necessário criar manualmente uma rede do tipo overlay e anexar cada serviço a ela para permitir a comunicação.
A comunicação não é possível por padrão; é necessário expor as portas de cada serviço para o host e comunicar-se através do IP do host.
Um Analista de Tecnologia da Informação deseja implantar um sistema composto por vários containers com redes e volumes específicos. Ele precisa garantir que os serviços iniciem com dependências definidas e que seja fácil replicar o ambiente em outras máquinas. Assinale a alternativa correta que corresponde qual recurso ele deve usar.
Criar imagens em lote com Dockerfile encadeado para cada serviço.
Utilizar Docker Compose para orquestrar múltiplos containers com YAML.
Gerar snapshots dos containers com docker export e carregar manualmente.
Executar os containers sequencialmente com Docker CLI e scripts Bash.
Configurar todos os volumes em um único container com bind mounts fixos.
Considere o seguinte arquivo docker-compose.yml:

Diante do exposto, assinale a alternativa CORRETA.
A diretiva depends_on garante que a instância do serviço db esteja completamente operacional e pronta para conexões antes do início do serviço app.
Os volumes nomeados app-data e db-data são temporários, e serão descartados pelo Docker Compose assim que os serviços forem desligados.
A especificação depends_on estabelece uma ordem estrita em que o serviço db é iniciado e seu endpoint testado por meio de uma verificação de disponibilidade de porta.
Os volumes nomeados app-data e db-data são criados e gerenciados automaticamente pelo Docker Compose, permitindo a persistência dos dados mesmo após a remoção dos contêineres.


Seu próximo nível começa aqui
Seu desenvolvimento não pode ter limites. Garanta sua Assinatura Ilimitada e libere uma preparação completa com os melhores professores do Brasil.
Um analista de sistemas está planejando a implementação de uma infraestrutura baseada em contêineres para facilitar o desenvolvimento, o teste e a implantação de aplicações. Para isso, ele deve selecionar um arquivo de configuração usado para definir as características, as dependências e as configurações de um container denominado de
Dockerfile.
Docker Container.
Docker Compose.
Imagem Docker.
Carlos gerou uma imagem customizada para um contêiner no Docker, o qual executará um serviço na porta 3000, baseado em Node.JS.
Para o arquivo Dockerfile, foi utilizada a imagem node:alpine de base, e uma das linhas escritas por Carlos foi:
EXPOSE 3000
CMD npm -p 3000:3000
WORKDIR ./src ./usr/app
RUN npm start
COPY ./src
Dockerfile é um arquivo de texto que contém todos os comandos que um usuário pode chamar na linha de comando para montar uma imagem Docker.
Assinale a opção que indica o comando usado para mostrar quais portas a aplicação está escutando.
ENTRYPOINT.
EXPOSE.
ENV.
FROM.
ARG.
Acerca de conteinerização e orquestração com Docker e Kubernetes, assinale a opção correta.
A orquestração de contêineres usa o kernel do Linux e recursos do kernel, como cgroups e namespaces, para segregar processos, assim eles podem ser executados de maneira independente.
Contêineres são plataformas de código aberto (open source) que controlam como e onde eles serão executados.
A orquestração de contêineres é um processo de gerenciamento automatizado que inclui o provisionamento, a implantação, o escalonamento e o monitoramento de vários contêineres.
A principal diferença entre Docker e Kubernetes está no fato de que o Docker deve ser executado em um cluster, enquanto o Kubernetes é executado em um único nó.
Kubernetes é um ambiente isolado, disposto em um servidor, que divide um único host de controle onde cada contêiner possui uma função e responsabilidade.
Carla precisa integrar dois serviços criados com tecnologia Node.js: o primeiro é um backend na arquitetura REST e o segundo, um frontend que consome os serviços do primeiro. Os serviços executam no Docker, respectivamente, através dos contêineres back001 e front001, e apenas front001 oferece acesso no ambiente externo ao Docker.
Para integrá-los, Carla criou a rede virtual net001 no Docker e adicionou back001 e front001 a essa rede, utilizando os comandos:
docker add network -d bridge net001
docker connect --network net001 back001
docker connect --network net001 front001
docker config network -a net001
docker run -itd --network net001 [back001, front001]
docker network new -d bridge net001
docker network connect net001 back001
docker network connect net001 front001
docker network create -d bridge net001
docker run -itd --network net001 back001
docker run -itd --network net001 front001
docker add network -d bridge net001
docker run -itd --network net001 [back001, front001]


Seu próximo nível começa aqui

Seu próximo nível começa aqui
Destrave a preparação completa para sua aprovação. Com a Assinatura Ilimitada, você estuda com os melhores professores do Brasil e todos os recursos Gran.
Compose é uma ferramenta do Docker utilizada para definir e executar “multi-containers”. Para tal, ela faz uso de um arquivo no formato YAML, como o exemplo abaixo.

Figura 03
Sobre o arquivo YAML descrito no exemplo, é correto afirmar
no serviço “web”, a configuração “volumes” garante que deverá ser criado um volume cujo nome é “/code”, e que armazenará o conteúdo da pasta “/data”.
no serviço “web”, a configuração “depends_on” informa ao container criado pelo serviço “db” que este deverá subir somente após o container do serviço “web” estar em execução.
o container de banco de dados deverá utilizar uma imagem denominada “postgres:latest”, armazenada no repositório local de imagens.
ao executar esse conjunto de serviços com a ferramenta docker-compose, serão executados 3 containers no sistema: um container denominado db, outro container denominado web e um terceiro container denominado “compose-service”.
Sobre o uso do docker compose, qual das alternativas está incorreta?
docker compose ps lista os containers de um projeto Compose, com o status atual e as portas expostas.
docker compose down para containers e remove containers, redes, volumes e imagens criadas pelo comando up.
docker compose port libera a(s) porta(s) de rede passada(s) como parâmetro em um container.
docker compose create cria containers para um serviço.
docker compose restart reinicia todos os serviços parados e em execução, ou apenas os serviços especificados.
O analista Valdir precisa gerenciar, simultaneamente, vários daemons do Docker que estão em servidores remotos, a partir do utilitário de linha de comando docker do seu computador. Para simplificar o trabalho, Valdir deve utilizar o recurso nativo do utilitário docker que permite persistir as configurações de conexão aos daemons remotos e alternar o uso dos daemons.
Em seu computador, Valdir deve gerenciar a comunicação com os daemons remotos por meio do comando docker:
node;
config;
swarm;
context;
instance.
Uma equipe de especialistas está implantando uma nova aplicação web que opera em conjunto com uma base de dados. A equipe resolveu utilizar o Docker para esta implantação isolando a aplicação em um container e a base de dados em outro container.
Para definir os dois containers e configurar sua comunicação através de um único arquivo, a equipe deve usar a ferramenta Docker
File.
Scan.
Buildx.
Compose.
Hub.