docker compose down --rmi all # Remove images too docker system prune -a # Deep clean (careful!) Compose Watch (Docker Compose 2.22+) Automatically rebuild and restart on file changes – replaces hot-reload tools.
project/ ├── docker-compose.yml ├── app/ │ ├── Dockerfile │ └── index.js └── .env
up -d # Start in background down # Stop + remove containers down -v # Also delete volumes restart # Restart all services
db: image: postgres:15 environment: POSTGRES_USER: dev POSTGRES_PASSWORD: devpass POSTGRES_DB: myapp volumes: - db_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U dev"] interval: 10s
Start with debug tools: docker compose --profile debug up
Use a wait-script or dockerize inside your app. 8. Development vs. Production Compose Files Approach 1: Override file