Compose
Manage Docker Compose projects, deploy from a compose file, and stream pull/up progress from the CLI.
The compose command group works against existing Compose projects (anything with the com.docker.compose.project label) and can also deploy a fresh project from a compose file.
Compose commands require a Docker runtime. They are unavailable when the selected host is a Podman target.
List projects
dockerman compose list
dockerman compose list --prettyReturns project name, container count, status, and base path.
Lifecycle
dockerman compose up myproject --detach
dockerman compose stop myproject
dockerman compose start myproject
dockerman compose restart myproject --service web
dockerman compose remove myproject --remove-volumes --yesup, stop, start, and restart all accept the standard global flags:
| Flag | Purpose |
|---|---|
--working-dir <path> | Override the project's working directory |
--config-files <paths> | Comma-separated list of compose files |
--env-file <path> | Override the env file |
--profile <name> | Activate a Compose profile |
--progress <mode> | auto, tty, plain, or quiet |
--dry-run | Print what would happen without applying changes |
--service <name> | Limit restart/stop/start to a single service |
compose up accepts --detach (default) or --attach. The current implementation waits for the Compose process and returns its captured output; it does not stream each log line live.
compose remove (also aliased as compose down) is destructive and needs --yes. --remove-volumes is passed through the container-removal path and does not enumerate and delete every named volume in the project.
Pull
dockerman compose pull myproject --json
dockerman compose pull myproject --service web --jsonStreams pull progress as one NDJSON envelope per layer. Use --json for machine-readable output, omit it for the human-friendly progress lines.
Deploy from a compose file
dockerman compose deploy myproject ./docker-compose.yml \
--env DATABASE_URL=postgres://... \
--env LOG_LEVEL=infodeploy takes a project name plus a compose file path. The CLI reads the file and the daemon writes its contents to a temporary directory before invoking Compose. Relative build contexts and bind paths therefore do not reliably resolve against the original file's parent; use absolute paths or deploy from an existing project with an explicit working directory.
deploy and up use different RPCs. Use deploy for raw Compose content and up for a project already represented by its Compose labels and configuration.