Testando o Docker Compose
Agora que instalamos com sucesso o Docker Compose, vamos criar um projeto simples para testar se ele funciona corretamente.
Criar um Diretório de Projeto
Primeiro, vamos criar um diretório para o nosso projeto de teste:
mkdir -p ~/project/docker-compose-test
cd ~/project/docker-compose-test
Criar um Arquivo de Configuração do Docker Compose
Agora, vamos criar um arquivo docker-compose.yml simples usando o editor nano:
nano docker-compose.yml
Adicione o seguinte conteúdo ao arquivo:
version: "3"
services:
web:
image: nginx:latest
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html
Esta configuração define um servidor web simples usando a imagem Nginx. Ele mapeia a porta 8080 no seu host para a porta 80 no contêiner e monta um diretório local para servir conteúdo HTML.
Salve o arquivo pressionando Ctrl+O, depois Enter e saia do nano com Ctrl+X.
Criar Conteúdo HTML
Vamos criar um diretório para o nosso conteúdo HTML e um arquivo HTML simples:
mkdir -p html
nano html/index.html
Adicione o seguinte conteúdo ao arquivo HTML:
<!DOCTYPE html>
<html>
<head>
<title>Docker Compose Test</title>
</head>
<body>
<h1>Hello from Docker Compose!</h1>
<p>If you can see this, your Docker Compose setup is working correctly.</p>
</body>
</html>
Salve o arquivo e saia do nano.
Iniciar a Aplicação Docker Compose
Agora, vamos iniciar nossa aplicação Docker Compose:
docker compose up -d
Você deve ver uma saída semelhante a:
[+] Running 2/2
⠿ Network docker-compose-test_default Created
⠿ Container docker-compose-test-web-1 Started
Isso indica que o Docker Compose criou uma rede e iniciou o contêiner Nginx.
Verificar se a Aplicação está Rodando
Vamos verificar se nosso contêiner está rodando:
docker compose ps
Você deve ver uma saída semelhante a:
NAME COMMAND SERVICE STATUS PORTS
docker-compose-test-web-1 "/docker-entrypoint.…" web running 0.0.0.0:8080->80/tcp
Agora, vamos enviar uma requisição para o servidor web para verificar se ele está servindo nosso conteúdo:
curl http://localhost:8080
Você deve ver o conteúdo HTML que criamos:
<!DOCTYPE html>
<html>
<head>
<title>Docker Compose Test</title>
</head>
<body>
<h1>Hello from Docker Compose!</h1>
<p>If you can see this, your Docker Compose setup is working correctly.</p>
</body>
</html>
Ótimo! Você criou e executou com sucesso uma aplicação Docker Compose.
Parar a Aplicação Docker Compose
Para parar e remover os contêineres, redes e volumes criados pelo Docker Compose, execute:
docker compose down
Você deve ver uma saída semelhante a:
[+] Running 2/2
⠿ Container docker-compose-test-web-1 Removed
⠿ Network docker-compose-test_default Removed
Isso confirma que o Docker Compose limpou os recursos que ele criou.