Docker Compose Up & Down

Master docker compose up and down commands with all essential flags. Learn how to start, stop, rebuild, and scale multi-container applications with Docker Compose.

Docker Compose

Detailed Explanation

Starting Services with docker compose up

docker compose up reads your docker-compose.yml and creates all defined services, networks, and volumes.

Common Usage Patterns

# Start all services in background
docker compose up -d

# Start and rebuild images
docker compose up -d --build

# Start specific services only
docker compose up -d web api

# Force recreate even if config hasn't changed
docker compose up -d --force-recreate

# Wait for health checks to pass
docker compose up -d --wait

Scaling Services

# Run 3 instances of the worker service
docker compose up -d --scale worker=3

Using Alternate Files

# Use a custom compose file
docker compose -f docker-compose.prod.yml up -d

# Override with multiple files (merged in order)
docker compose -f docker-compose.yml -f docker-compose.override.yml up -d

Stopping Services with docker compose down

# Stop and remove containers + networks
docker compose down

# Also remove volumes (WARNING: deletes data)
docker compose down -v

# Also remove images
docker compose down --rmi all

# Remove orphan containers not in current compose file
docker compose down --remove-orphans

Other Useful Commands

# View running service status
docker compose ps

# Follow logs for specific services
docker compose logs -f web api

# Execute command in a service
docker compose exec web sh

# Pull latest images
docker compose pull

Use Case

Orchestrating multi-service development environments (web app + database + cache), running integration test suites with all dependencies, and managing staging environments that mirror production docker-compose configurations.

Try It — Docker CLI Reference

Open full tool