Compose
Gestiona proyectos Docker Compose, despliega desde un fichero compose y transmite el progreso de pull/up desde la CLI.
El grupo compose opera sobre proyectos Compose existentes (cualquier recurso con la etiqueta com.docker.compose.project) y también puede desplegar un proyecto nuevo desde un fichero compose.
Los comandos de Compose requieren un runtime Docker. No están disponibles cuando el host seleccionado es un objetivo Podman.
Listar proyectos
dockerman compose list
dockerman compose list --prettyDevuelve nombre del proyecto, número de contenedores, estado y ruta base.
Ciclo de vida
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 y restart aceptan los flags globales estándar:
| Flag | Propósito |
|---|---|
--working-dir <ruta> | Sobrescribe el directorio de trabajo del proyecto |
--config-files <rutas> | Lista de ficheros compose separados por comas |
--env-file <ruta> | Sobrescribe el fichero env |
--profile <nombre> | Activa un perfil de Compose |
--progress <modo> | auto, tty, plain o quiet |
--dry-run | Imprime qué pasaría sin aplicar cambios |
--service <nombre> | Limita restart/stop/start a un único servicio |
compose up acepta --detach (por defecto) o --attach. Actualmente la salida attach se devuelve al terminar el proceso, no como logs en tiempo real.
compose remove (alias compose down) es destructivo y necesita --yes. --remove-volumes pide a Compose borrar los volúmenes que reconoce, pero no garantiza enumerarlos todos.
Pull
dockerman compose pull myproject --json
dockerman compose pull myproject --service web --jsonTransmite el progreso del pull como un envelope NDJSON por capa. Usa --json para salida procesable por máquinas, omítelo para las líneas de progreso legibles.
Desplegar desde un fichero compose
dockerman compose deploy myproject ./docker-compose.yml \
--env DATABASE_URL=postgres://... \
--env LOG_LEVEL=infodeploy toma un nombre de proyecto y un fichero compose. El daemon lo ejecuta desde un directorio temporal, por lo que contextos de build, bind mounts o env files relativos pueden fallar. Usa rutas absolutas o up.
deploy y up usan RPC distintos. El primero envía el contenido del fichero; el segundo opera un proyecto existente.