Docker - Compor

Docker Composeé usado para executar vários contêineres como um único serviço. Por exemplo, suponha que você tenha um aplicativo que requer NGNIX e MySQL, você poderia criar um arquivo que iniciaria ambos os contêineres como um serviço sem a necessidade de iniciar cada um separadamente.

Neste capítulo, veremos como começar a usar o Docker Compose. Em seguida, veremos como obter um serviço simples com MySQL e NGNIX instalado e funcionando usando o Docker Compose.

Docker Compose ─ Instalação

As etapas a seguir precisam ser seguidas para colocar o Docker Compose em funcionamento.

Step 1 - Baixe os arquivos necessários de github usando o seguinte comando -

curl -L "https://github.com/docker/compose/releases/download/1.10.0-rc2/dockercompose
   -$(uname -s) -$(uname -m)" -o /home/demo/docker-compose

O comando acima baixará a versão mais recente do Docker Compose que, no momento em que este artigo foi escrito, é 1.10.0-rc2. Ele irá então armazená-lo no diretório/home/demo/.

Step 2 - Em seguida, precisamos fornecer execute privileges para o arquivo Docker Compose baixado, usando o seguinte comando -

chmod +x /home/demo/docker-compose

Podemos então usar o seguinte comando para ver o compose versão.

Sintaxe

docker-compose version

Parâmetros

  • version - Isso é usado para especificar que queremos os detalhes da versão do Docker Compose.

Resultado

Os detalhes da versão do Docker Compose serão exibidos.

Exemplo

O exemplo a seguir mostra como obter o docker-compose versão.

sudo ./docker-compose -version

Resultado

Você obterá a seguinte saída -

Criando seu primeiro arquivo Docker-Compose

Agora, vamos prosseguir e criar nosso primeiro arquivo Docker Compose. Todos os arquivos Docker Compose são arquivos YAML. Você pode criar um usando o editor vim. Portanto, execute o seguinte comando para criar ocompose arquivo -

sudo vim docker-compose.yml

Vamos dar uma olhada nos vários detalhes deste arquivo -

  • o database e webpalavras-chave são usadas para definir dois serviços separados. Um estará executando nossomysql banco de dados e o outro será nosso nginx servidor web.

  • o image palavra-chave é usada para especificar a imagem de dockerhub para nós mysql e nginx recipientes

  • Para o banco de dados, estamos usando a palavra-chave portas para mencionar as portas que precisam ser expostas para mysql.

  • E então, também especificamos as variáveis ​​de ambiente para mysql que são necessários para executar mysql.

Agora vamos executar nosso arquivo Docker Compose usando o seguinte comando -

sudo ./docker-compose up

Este comando levará o docker-compose.yml arquivo em seu diretório local e comece a construir os contêineres.

Uma vez executado, todas as imagens começarão a ser baixadas e os contêineres serão iniciados automaticamente.

E quando você faz um docker ps, você pode ver que os contêineres estão realmente funcionando.