No containers to start
Fixes the docker-compose error `ERROR: No containers to start`. It explains the verified fix from a real resolved case, when it applies, and what to check first. Not for unrelated docker-compose failures or different error text.
Fix ERROR: No containers to start (docker-compose)
TL;DR
You ran docker-compose start but the containers were never created. start only starts containers that already exist, it never creates them. Run docker-compose up -d once to create and start everything; after that, start, stop, and restart work as expected.
The error, verbatim:
ERROR: No containers to startSteps
Check whether any containers exist for the project:
docker-compose psSuccess check: The list is empty or shows no containers, which confirms nothing was created yet.
Create and start everything with up instead of start:
docker-compose up -dSuccess check: Compose prints Creating ... done / Started for each service.
Verify the services are running:
docker-compose psSuccess check: Each service shows Up in the state column.
When to use
You hit this exact error while using docker-compose. The trigger list below matches your situation.
When NOT to use
If the error text differs, or the failure is in a different tool (e.g. a Docker daemon error when you only need the compose fix), find the skill for that exact error instead.
Tool compatibility
docker-compose v1 and Compose v2 (docker compose). Any OS.
Variant phrasings
ERROR: No containers to start
no containers to start
Root cause
docker-compose start and restart operate on already-created containers. If you never ran up (or ran down, which removes containers), there is nothing to start, so compose errors out instead of silently doing nothing. In Compose v2 the same message can appear when a service is scaled to 0 replicas.
Edge cases
- After docker-compose down, you must run up again; start alone will fail the same way.
- If only one service errors, check that service for a scale: 0 or a profiles entry that was not enabled.
- docker compose (v2, no hyphen) behaves the same; the fix is identical.
Where this came from
Resolved from the public discussion at https://stackoverflow.com/questions/39562748 (so:39562748).