Como instalar o Docker Compose no Ubuntu
O Docker Compose é particularmente adequado para ambientes de desenvolvimento e teste mas também para implantações de produção menores. Explicamos como você pode orquestrar facilmente aplicativos Docker no Ubuntu com o Compose.
Quais são os requisitos para o Docker Compose no Ubuntu?
Antes de poder usar o Docker Compose, você deve garantir que seu sistema atenda aos seguintes pré-requisitos:
- Docker Engine: O Compose é uma extensão do Docker Engine que você precisa instalar.
- Sistema operacional: Ubuntu, usuário sudo com privilégios de root.
Para usar um sistema operacional que não seja o Linux, consulte nosso guia sobre como instalar o Docker Compose no Windows e o Docker Compose no macOS.
Guia passo a passo para instalar o Docker Compose no Ubuntu
Para usar o Docker Compose no Ubuntu, você deve primeiro instalar o Docker Engine e verificar se ele está sendo executado corretamente. Quando o Docker estiver em execução, baixe o Compose e crie o arquivo YAML para configurar seus aplicativos.
Etapa 1: baixar e instalar o Docker Compose
Baixe a versão mais recente do Docker Compose do repositório oficial do GitHub, digitando o seguinte comando em um terminal:
$ curl -SL https://github.com/docker/compose/releases/download/v2.17.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-composeshellAgora, você pode conceder direitos ao Docker Compose execute :
$ sudo chmod +x /usr/local/bin/docker-composeshellUse a opção --version para verificar se o Compose foi instalado com êxito.
$ docker-compose --versionshellVocê obterá o seguinte resultado:

Se a instalação falhar, verifique o caminho.
Você também pode criar um link simbólico para o /usr/bin caminho:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-composeshellEtapa 2: Configurar o arquivo docker-compose.yml
Para demonstrar o design de um arquivo YAML do Docker Compose, usamos a imagem Nginx do Docker Hub oficial para o ambiente de contêiner.
Primeiro, crie uma nova pasta em seu diretório inicial:
$ mkdir ~/compose-testshellAlterne para o diretório e crie uma nova pasta para o diretório raiz de seu ambiente Nginx.
$ cd ~/compose-test
$ mkdir appshellVocê pode usar qualquer editor de texto como o nano para criar index.html.
$ nano app/index.htmlshellAqui está o código HTML de uma página de amostra:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Docker Compose Test</title>
</head>
<body>
<h1>This is a Docker Compose Test Page for an Nginx container.</h1>
</body>
</html>htmlSalve e feche o arquivo HTML e crie docker-compose.yml.
$ nano docker-compose.ymlshellO conteúdo é dividido no número da versão da configuração e no bloco de serviços.
version: '3.9'
services:
web:
image: nginx:alpine
ports:
- "8000:80"
volumes:
- ./app:/usr/share/nginx/htmlYAMLNo bloco de serviços, há um único serviço chamado “web” Ele está associado à imagem Nginx especificada e ao redirecionamento de porta. Em nossa configuração, todas as solicitações feitas à porta 8000 no computador host são redirecionadas para o contêiner da Web na porta 80, onde o Nginx está em execução. Além disso, usamos um volume compartilhado entre o host e o contêiner. Isso torna a pasta local “app” acessível ao aplicativo Nginx
Etapa 3: executar o Docker Compose
Com o comando a seguir, criamos um contêiner web **e executamos o ambiente do contêiner em segundo plano:
$ docker-compose up -dshellSe a imagem especificada no arquivo YAML não estiver presente no sistema local, ela será baixada automaticamente.
Para testar se o ambiente Nginx está em execução, digite o comando ps .
$ docker-compose psshellA página de amostra que você criou anteriormente agora está acessível em localhost:8000 quando você executa a demonstração em seu computador. Se estiver usando um servidor remoto, basta especificar o endereço IP do seu servidor em vez de “localhost”.

Você pode interromper o aplicativo do contêiner usando stop.
$ docker-compose stopshellNão sabe como começar a usar as ferramentas de contêiner? Confira nosso Tutorial do Docker e nossa visão geral dos Comandos do Docker. Ou saiba mais sobre Orquestração do Docker com Swarm e Compose.

