Docker Compose

Defines and runs multi-container Docker applications. A single docker-compose.yml file describes services, networks, and volumes.

Syntax

environments-and-security
docker compose up -d
docker compose down
docker compose logs service

Example

environments-and-security
version: "3.9"
services:
  app:
    build: .
    ports:
      - "3000:3000"
    environment:
      - DATABASE_URL=postgres://postgres:password@db:5432/myapp
    depends_on:
      - db
  db:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: password
      POSTGRES_DB: myapp
    volumes:
      - pgdata:/var/lib/postgresql/data
volumes:
  pgdata: