Executar um Serviço Dentro de um Container

DockerIntermediate
Pratique Agora

Introdução

Neste desafio, você praticará o gerenciamento de serviços conteinerizados em um sistema Red Hat Enterprise Linux. Sua tarefa consiste em construir uma imagem de container personalizada para um servidor web, executar um container baseado nessa imagem e garantir que o serviço esteja acessível a partir do sistema hospedeiro. Este exercício abrange habilidades fundamentais para a implantação e o gerenciamento de aplicações em containers, uma competência essencial para um Administrador de Sistemas Certificado pela Red Hat (RHCSA).

Executar um Serviço Dentro de um Container

Neste desafio, você construirá uma imagem de container personalizada que inclui o servidor HTTP Apache (httpd). Você criará um arquivo HTML simples para ser servido pelo servidor web e executará um container a partir da sua imagem personalizada. Por fim, você verificará se o serviço web está funcionando corretamente e se está acessível pelo host.

Tarefas

  • Construir uma imagem de container personalizada que inclua o servidor HTTP Apache (httpd).
  • Criar um arquivo HTML simples para ser servido pelo servidor web.
  • Executar um container a partir da sua imagem personalizada e expor o serviço web.
  • Verificar se o serviço web está operando corretamente e se está acessível a partir do host.

Requisitos

  • Todos os arquivos devem ser criados no diretório ~/project.
  • Criar um Dockerfile que utilize a imagem base ubi9.
  • O Dockerfile deve instalar o pacote httpd.
  • Criar um arquivo index.html contendo o texto Hello, World! dentro de uma tag <h1>.
  • Construir uma imagem de container e nomeá-la (tag) como my-web-server.
  • Executar um container em segundo plano a partir da imagem my-web-server.
  • O container deve ser nomeado como my-web-server-run.
  • O servidor web dentro do container deve escutar na porta 80, e esta porta deve ser mapeada para a porta 8080 no host.

Exemplo

Após iniciar o container com sucesso, ao executar o comando curl localhost:8080 no seu terminal, o resultado deve ser semelhante a este:

<html>
  <body>
    <h1>Hello, World!</h1>
  </body>
</html>

Resumo

Neste desafio, você aprendeu como conteinerizar um serviço em um sistema Red Hat Enterprise Linux. Você criou com sucesso um Dockerfile para definir um ambiente personalizado, construiu uma imagem de container usando o podman e executou um container para hospedar um servidor web. Você também praticou a verificação do status de um container em execução e o teste de seu serviço de rede. Estas são habilidades essenciais para a implantação de aplicações modernas e administração de sistemas.

✨ Verificar Solução e Praticar