Docker Compose Tutorial — Compose CLI Overview

2 minute read

This page gives you a quick tour of all Docker Compose commands. Think of it as a map — you’ll explore each command in depth in Chapter 11.


All Compose Commands

docker compose --help

Here’s every command, grouped by purpose:

Lifecycle Commands

Command Purpose Example
up Create and start services docker compose up -d
down Stop and remove everything docker compose down
start Start existing stopped services docker compose start
stop Stop running services docker compose stop
restart Restart services docker compose restart web
pause Pause running services docker compose pause
unpause Unpause paused services docker compose unpause

Inspection Commands

Command Purpose Example
ps List containers docker compose ps
logs View container logs docker compose logs -f web
top Show running processes docker compose top
events Stream real-time events docker compose events
config Validate and display compose file docker compose config
ls List all compose projects docker compose ls

Execution Commands

Command Purpose Example
exec Run command in running container docker compose exec db psql
run Run one-off command docker compose run web sh
cp Copy files to/from container docker compose cp web:/app/log .

Image Commands

Command Purpose Example
build Build service images docker compose build
pull Pull service images docker compose pull
push Push service images docker compose push
images List images used docker compose images

Development Commands

Command Purpose Example
watch File sync + auto rebuild docker compose watch

Global Options

These options work with any compose command:

docker compose [OPTIONS] COMMAND
Option Purpose Example
-f FILE Specify compose file docker compose -f prod.yml up
-p NAME Set project name docker compose -p myapp up
--profile Enable a profile docker compose --profile debug up
--env-file Specify env file docker compose --env-file .env.prod up
--verbose Show verbose output docker compose --verbose up
--dry-run Preview changes without executing docker compose up --dry-run

Getting Help

Every command has its own help page:

# General help
docker compose --help

# Command-specific help
docker compose up --help
docker compose down --help
docker compose exec --help

The Most Common Workflow

# Start your stack
docker compose up -d

# Check status
docker compose ps

# View logs
docker compose logs -f

# Shell into a service
docker compose exec web sh

# Stop everything
docker compose down

This 5-command workflow covers 90% of daily Compose usage.


Summary

Category Key Commands
Lifecycle up, down, start, stop, restart
Inspect ps, logs, top, config
Execute exec, run, cp
Images build, pull, push
Development watch

Quick Reference

Item Detail
Start services docker compose up -d
Stop services docker compose down
View logs docker compose logs -f
Shell into container docker compose exec service sh
Check status docker compose ps
Validate file docker compose config