Pular para o conteúdo principal

Questão de Sistemas Operacionais — Geral — INSTITUTO AOCP 2025

Sistemas OperacionaisGeral
Código
qa701191
Banca
INSTITUTO AOCP
Órgão
TRE TO
Ano
2025
Cargo
TJ
No TRE-TO, um técnico está implantando uma aplicação conteinerizada no Docker para processar relatórios de auditoria de urnas eletrônicas em preparação para as eleições. Para garantir que a aplicação rode continuamente sem interromper outras tarefas no servidor, assinale a alternativa que apresenta o comando que deve ser usado para iniciar um contêiner em segundo plano a partir de uma imagem existente.
  1. Adocker run -d
  2. Bdocker start
  3. Cdocker exec -it
  4. Ddocker build -t
  5. Edocker pull
Revelar gabarito e comentário

GabaritoA — docker run -d

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Docker: iniciando contêineres em segundo plano

Gabarito: letra A. O comando docker run -d cria e inicia um novo contêiner a partir de uma imagem, executando-o em segundo plano (modo detached), liberando o terminal para outras tarefas — exatamente o que o enunciado pede. A opção -d (de detach) é o que garante a execução contínua sem prender o terminal.

O Docker é uma plataforma de virtualização leve que empacota aplicações e suas dependências em contêineres. Diferente de máquinas virtuais, que virtualizam o hardware, os contêineres compartilham o kernel do sistema operacional host, tornando-os mais rápidos e eficientes. Para entender o comando correto, é preciso distinguir os dois momentos da vida de um contêiner: criar e iniciar. O comando docker run faz as duas coisas de uma vez: ele cria um contêiner a partir de uma imagem e o inicia imediatamente. Já o docker start apenas inicia um contêiner que já foi criado anteriormente (por exemplo, com docker create), mas não cria um novo a partir de uma imagem.

A questão pede especificamente "iniciar um contêiner em segundo plano a partir de uma imagem existente". Isso aponta diretamente para o docker run -d, pois é o comando que cria e inicia um contêiner novo a partir de uma imagem, com a flag -d para rodar em segundo plano. O docker start também inicia um contêiner, mas não a partir de uma imagem — ele parte de um contêiner já existente (parado). A pegadinha está em confundir docker run (cria + inicia) com docker start (apenas inicia um contêiner já criado).

Na prática, o comando seria algo como docker run -d nome-da-imagem. O Docker cria um contêiner a partir da imagem especificada, inicia-o e o mantém rodando em segundo plano, devolvendo o controle do terminal imediatamente. Isso é essencial para aplicações que devem rodar continuamente, como o processamento de relatórios de auditoria mencionado no enunciado, sem bloquear outras tarefas no servidor.

Guarde a distinção central: docker run = criar + iniciar (a partir de uma imagem) e docker start = iniciar um contêiner já existente. É exatamente nessa fronteira que as alternativas se dividem.

  1. 1docker pull (baixa imagem)
  2. 2docker run (cria + inicia)
  3. 3docker exec (entra no contêiner)
  4. 4docker stop (para)
  5. 5docker start (reinicia parado)
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

O comando docker run -d é o correto. Ele cria um novo contêiner a partir de uma imagem existente e o inicia em modo detached (segundo plano), graças à flag -d. Isso permite que a aplicação rode continuamente sem ocupar o terminal, liberando o servidor para outras tarefas. É o comando padrão para implantar e executar aplicações conteinerizadas em background.

Alternativa B — ❌ Incorreta

O comando docker start inicia um contêiner que já foi criado anteriormente (por exemplo, com docker create ou após um docker stop). Ele não cria um contêiner a partir de uma imagem — parte de um contêiner existente que está parado. Como o enunciado pede "iniciar um contêiner a partir de uma imagem existente", o docker start não atende, pois não há criação a partir da imagem.

Alternativa C — ❌ Incorreta

O comando docker exec -it executa um comando dentro de um contêiner já em execução, com terminal interativo (-it). Ele não inicia um contêiner nem cria um a partir de uma imagem. É usado para acessar o shell de um contêiner rodando, depurar ou executar comandos pontuais — não para iniciar a aplicação em segundo plano.

Alternativa D — ❌ Incorreta

O comando docker build -t constrói uma imagem Docker a partir de um Dockerfile, atribuindo uma tag (-t) à imagem resultante. Ele não inicia contêineres — apenas cria a imagem que, posteriormente, será usada pelo docker run. A confusão aqui é entre construir a imagem (build) e executar o contêiner (run).

Alternativa E — ❌ Incorreta

O comando docker pull baixa uma imagem de um registro (como o Docker Hub) para o host local. Ele apenas transfere a imagem para o computador, mas não a executa nem cria um contêiner. É um pré-requisito para o docker run, mas não inicia nada.

NÃO CAIA NESSA!

A banca explora a confusão entre docker run e docker start. O candidato que sabe que start inicia um contêiner pode marcar a letra B, esquecendo que o enunciado exige "a partir de uma imagem existente" — o que só o run faz, pois ele cria o contêiner a partir da imagem. O start apenas retoma um contêiner já criado. Fique atento: run = criar + iniciar; start = iniciar o que já existe.

PEGA ESSA DICA!

Para fixar, monte mentalmente a sequência do ciclo de vida: docker pull (baixa a imagem) → docker run (cria e inicia o contêiner) → docker exec (entra no contêiner em execução) → docker stop (para) → docker start (reinicia o contêiner parado). Se a questão falar em "imagem", o comando é run; se falar em "contêiner já existente", é start.

Gabarito: letra A

Link permanente: /questoes/qa701191