Prepare um projeto Docker Compose simples
Nesta etapa, prepararemos um projeto Docker Compose simples. Como o Docker Compose não está pré-instalado no ambiente LabEx, primeiro o instalaremos. Docker Compose é uma ferramenta para definir e executar aplicações Docker com múltiplos containers. Com o Compose, você usa um arquivo YAML para configurar os serviços da sua aplicação. Em seguida, com um único comando, você cria e inicia todos os serviços a partir da sua configuração.
Primeiro, vamos instalar o Docker Compose. Faremos o download do binário do Docker Compose e o tornaremos executável.
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
Agora, vamos verificar a instalação checando a versão do Docker Compose.
docker-compose --version
Você deve ver uma saída semelhante a Docker Compose version v2.20.2.
Em seguida, criaremos um projeto Docker Compose simples. Criaremos um diretório para nosso projeto e, em seguida, criaremos um arquivo docker-compose.yml dentro dele. Este arquivo definirá um serviço simples usando a imagem ubuntu.
mkdir ~/project/my-compose-app
cd ~/project/my-compose-app
nano docker-compose.yml
No editor nano, cole o seguinte conteúdo no arquivo docker-compose.yml:
version: "3.8"
services:
my-service:
image: ubuntu:latest
command: tail -f /dev/null
Pressione Ctrl + X, depois Y e Enter para salvar e sair do editor.
Vamos detalhar o arquivo docker-compose.yml:
version: '3.8' especifica a versão do formato do arquivo Docker Compose.
services: define os serviços que compõem sua aplicação.
my-service: é o nome do nosso serviço.
image: ubuntu:latest especifica a imagem Docker a ser usada para este serviço. Estamos usando a versão mais recente da imagem Ubuntu.
command: tail -f /dev/null é o comando que será executado quando o container iniciar. Este comando mantém o container em execução indefinidamente sem consumir recursos significativos, o que é útil para testes e depuração.
Antes de iniciar o serviço, precisamos baixar a imagem ubuntu:latest.
docker pull ubuntu:latest
Agora, podemos iniciar o serviço usando o comando docker-compose up. A flag -d executa os containers em modo detached (destacado), o que significa que eles serão executados em segundo plano.
docker-compose up -d
Você deve ver uma saída indicando que o serviço está sendo criado e iniciado.
Finalmente, vamos verificar o status do serviço em execução usando o comando docker-compose ps.
docker-compose ps
Você deve ver uma saída mostrando que o container my-service está em execução.