Documentação técnica oficial

Docker e Docker Compose: Comandos Essenciais

Guia rápido dos principais comandos, da instalação até criação e operação de containers.

1) Instalação (Ubuntu)

sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg lsb-release

sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Verificação

docker --version
docker compose version
sudo docker run hello-world

2) Docker (comandos principais)

Imagens
docker images
docker pull nginx:latest
docker build -t meuapp:1.0 .
docker rmi imagem_id
Containers
docker ps
docker ps -a
docker run -d --name web -p 8080:80 nginx
docker start web
docker stop web
docker restart web
docker rm web
docker logs -f web
docker exec -it web sh
docker inspect web
Monitoramento
docker stats
docker top web

3) Volumes e Rede

docker volume ls
docker volume create dados_app
docker run -d --name db -v dados_app:/var/lib/mysql mysql:8

docker network ls
docker network create minha_rede
docker run -d --name app --network minha_rede nginx

4) Limpeza e manutenção

docker system df
docker image prune -a
docker container prune
docker volume prune
docker network prune
docker system prune -a --volumes

5) Docker Compose (comandos principais)

docker compose up -d
docker compose down
docker compose ps
docker compose logs -f
docker compose logs -f app
docker compose exec app sh
docker compose pull
docker compose build
docker compose up -d --build
docker compose config

6) Exemplo de docker-compose.yml

services:
  app:
    image: nginx:latest
    container_name: app_web
    ports:
      - "8080:80"
    volumes:
      - ./html:/usr/share/nginx/html:ro
    restart: unless-stopped
    networks:
      - app_net

networks:
  app_net:
    driver: bridge

7) Fluxo recomendado para novos containers

  1. Criar pasta do projeto e arquivo docker-compose.yml.
  2. Definir ports, volumes, environment, networks e restart.
  3. Validar com docker compose config.
  4. Subir com docker compose up -d.
  5. Acompanhar com docker compose ps e docker compose logs -f.
← Início da base