Se você é novo no Docker e em containers, configurar um Contêiner Docker Apache é uma ótima maneira de começar. Criar uma aplicação no Docker é um grande benefício por causa de sua tecnologia leve e segura.
Neste tutorial, você aprenderá como configurar um Contêiner Docker Apache no Ubuntu. Use este tutorial para aprender a começar com o Docker e sair com um servidor web Apache também!
Pré-requisitos
Se você deseja seguir o passo a passo, certifique-se de ter o seguinte e um computador com Ubuntu 14.04.4 LTS ou superior com Docker instalado neste tutorial. Este tutorial usa Ubuntu 18.04.5 LTS com Docker v19.03.8 e um endereço IP público de 13.213.48.113.
Configurando o Contêiner Docker Apache
Supondo que você já tenha instalado o Docker, vamos primeiro configurar o contêiner Apache. Mais tarde, você aprenderá como iniciá-lo.
Uma das maneiras mais fáceis de iniciar rapidamente um contêiner Apache Docker é baixando uma imagem de contêiner existente do registro oficial do Docker Docker Hub. Para este exemplo, você baixará e executará um contêiner Docker chamado Apache.
Com alguns comandos do Docker, você estará executando uma instância do Apache em pouco tempo. Para fazer isso, siga as etapas abaixo.
Nota: Este tutorial não cobre a execução detalhada dos comandos do Docker. Para aprender mais sobre os comandos do Docker, visite a página de documentação da linha de comando do Docker.
1. Abra um terminal em sua máquina Ubuntu.
2. Baixe a imagem do Docker, que contém o Apache chamado httpd
, executando o comando docker pull
abaixo. Esse comando irá baixar ou puxar a imagem do Apache do registro do Docker, como mostrado abaixo.
A captura de tela abaixo mostra o resultado esperado ao puxar a imagem do Docker Hub.

3. Em seguida, confirme que você baixou a imagem executando o docker images
comando abaixo para listar todas as imagens disponíveis em seu computador.
Como você pode ver abaixo, agora você tem uma imagem do Docker, que é a imagem que você baixou do Docker Hub.

Executando o Container do Apache usando o Comando do Docker.
Na seção anterior, você baixou a imagem do Docker do Docker Hub. Agora, está pronto para criar um contêiner a partir dessa imagem. Para executar o contêiner Apache, você precisará usar o comando Docker da seguinte maneira:
1. Execute o comando docker run
para criar um novo contêiner com base na imagem Apache que você baixou.
O comando docker run
retornará o ID único do contêiner que você acabou de criar. Guarde este ID do contêiner no quadro destacado abaixo para o futuro, caso queira excluir ou remover o contêiner.

2. Quando o contêiner Apache estiver em execução, verifique se consegue acessar a interface web do Apache navegando para Endereço-IP-Público:80 usando seu navegador. Se você visualizar a mesma mensagem que está abaixo, então iniciou com sucesso seu contêiner Docker do Apache.
Certifique-se de que a Máquina Ubuntu 14.04.4 LTS tenha a porta de entrada 80 permitida no grupo de segurança.

3. Por fim, pare o contêiner se não precisar mais que ele esteja em execução, executando o comando docker stop
abaixo. Este comando irá parar o contêiner de forma graciosa.
Alternativamente, você também pode parar um contêiner em execução especificando seu nome no comando
docker stop
(docker stop docker-apache
).
Executando um Contêiner Apache Docker a partir de um Arquivo Docker
Na seção anterior, você aprendeu como iniciar um contêiner Apache Docker executando a imagem Docker httpd padrão. E se você precisar atualizar a imagem base para exibir conteúdo diferente ou expô-lo em uma porta diferente?
Implantar um contêiner usando um arquivo Docker permite que você remova a etapa manual de criação de imagem quando estiver testando a mesma configuração em um sistema operacional diferente. A abordagem do arquivo Docker é um script automatizado de imagens Docker.
Vamos criar um arquivo Docker e executar um contêiner a partir dele.
1. Crie uma pasta chamada ~/apache-server-docker-demo, então altere (cd
) o diretório de trabalho para essa pasta.
2. Crie outro arquivo, copie/cole a configuração abaixo e salve o arquivo como index.html dentro do diretório ~/apache-server-docker-demo. O arquivo index.html é uma página HTML que exibirá Este tutorial ensinará como executar um contêiner Apache no Docker assim que o contêiner iniciar, o que você verá mais tarde no curso.
3. Crie outro arquivo, copie/cole a configuração abaixo e salve o arquivo como Arquivo Docker dentro do diretório ~/apache-server-docker-demo. Quando concluído, o Docker usará este DockerFile para executar todos os comandos necessários para construir uma nova imagem do Docker em cima de qualquer imagem base.
O DockerFile abaixo contém vários passos/instruções que construirão o contêiner Apache:
Maintainer
– A instrução Maintainer fornece informações sobre o autor que gerencia este arquivo.FROM
– A instrução FROM inicializa um novo estágio de construção e define a Imagem Base para instruções subsequentes. No trecho de código abaixo,centos:7
é a imagem base.COPY
– O comando COPY copia um arquivo da máquina host (host Docker) para o contêiner. O ****index.html que você criou anteriormente no host Docker será copiado para o diretório /var/www/html do contêiner.EXPOSE
– A instrução EXPOSE informa ao Docker que o contêiner escuta nas portas de rede especificadas em tempo de execução. O servidor web Apache é exposto por padrão naPorta 80
.
4. Em seguida, verifique todos os arquivos necessários abaixo na pasta executando o comando tree
.

5. Em seguida, construa a imagem executando o comando docker build
. A flag t
é usada para marcar a imagem apache-server
com v1
e.
significa o diretório de trabalho atual.

docker build
command Quando o Docker constrói, retorna vários atributos. Você verá um desses atributos é REPOSITORY. O nome do REPOSITÓRIO é apache-server
, e a imagem é marcada com a versão v1
, como mostrado abaixo.

6. Por fim, execute o contêiner Apache usando a imagem recém-construída executando o comando docker run
.
A flag p
publica a(s) porta(s) do contêiner para o host, que é 80:80
. A flag -it
instrui o Docker a alocar um pseudo-terminal conectado ao stdin do contêiner.
7. Por fim, verifique se consegue acessar a interface web do Apache navegando até Endereço-ip-público:80 usando o seu navegador da web. Você verá esta mensagem na interface web porque criou o arquivo index.html, e o Docker o copiou para o contêiner quando foi iniciado.

Conclusão
Este tutorial teve como objetivo ajudá-lo no processo de configuração de um contêiner Apache Docker usando imagens Docker. Você aprendeu como iniciar contêineres Apache usando arquivos Docker, com os quais pode editar e construir contêineres personalizados da sua escolha.
E agora, o que você vai construir na imagem do servidor Apache Docker?