Tabela de conteúdos

Docker Compose

Compose é focado na definição e execução de múltiplos containers em um único host (sua máquina local ou um servidor único).

Cria estruturas de aplicações separadas em container (container-frontend, container-backend, container-db), utiliza arquivos YAML para construção.

Install

Exemplo

Yaml / .yml

Exemplo arquivo Yaml

version: "3.8"

services:
  frontend:           #nome do container a ser criado
    depends_on: 
      - backend
    build: ./frontend #procura o arquivo Dockerfile dentro dessa pasta
    ports:
      - 3000:3000

  backend: 
    depends_on: #espera a aplicação db estar up para executar o app
      - db
    build: ./backend
    ports: 
      - 3001:3001
    environment: 
      DB_URL: mongodb://db/vidly
    command: ./docker-entrypoint.sh

  db:
    image: mongo:4.0-xenial
    ports:
      - 27017:27017
    volumes:
      - vidly:/data/db

volumes:
  vidly:

REDE DOCKER

Acessando um container:

docker exec -it -u root <id_container> sh 

Listar rede:

ifconfig

Ping rede:

ping <nomecontainer>

Docker possui um DNS Resolver para cada container

Logs

docker-compose logs

Help:

docker-compose logs --help