Contenedores
Ciclo de vida, logs, stats, terminal y comandos de backup/restore para contenedores Docker.
El grupo container cubre el ciclo de vida completo más los attach en streaming y backup/restore. Todos los comandos aceptan --host para apuntar a un host concreto; si no se indica, se usa el host persistente fijado con dockerman host use.
Listar e inspeccionar
dockerman container list
dockerman container list --pretty
dockerman container inspect weblist devuelve la misma estructura que la GUI: id, nombre, imagen, estado, mapeo de puertos, fecha de creación. Añade --pretty para obtener una tabla alineada por columnas.
Ciclo de vida
dockerman container start web
dockerman container stop web --timeout 10
dockerman container restart web --timeout 10
dockerman container pause web
dockerman container unpause web
dockerman container rename web web-oldstop y restart aceptan --timeout en segundos; el daemon envía SIGTERM y luego SIGKILL tras el timeout.
Crear y clonar
dockerman container create web nginx:latest --platform linux/amd64
dockerman container create web nginx:latest --config ./run.json
dockerman container commit web --repo myrepo --tag snapshot --pause--config admite un fichero JSON con la misma forma que bollard::ContainerCreateOptions. commit toma una snapshot de un contenedor en ejecución como nueva imagen.
Eliminar
dockerman container remove web --force --volumes --yesremove es destructivo. Necesita --yes (o el flag global -y); sin él, el daemon rechaza la llamada. Añade --force para eliminar un contenedor en marcha y --volumes para borrar los volúmenes anónimos.
Logs
dockerman container logs web --tail 50
dockerman container logs web --follow --tail 5
dockerman container logs web --since 2026-05-01T00:00:00Z --timestamps
dockerman container logs web --follow --jsonSin --json, stdout sólo contiene líneas de log; los errores van a stderr. Con --json, la CLI emite un envelope de streaming por frame. --follow corre hasta que pulses Ctrl+C (salida 130) o el stream termine de forma natural (salida 0).
--until es incompatible con --follow; la CLI rechaza esa combinación antes de abrir el stream. Usa --since/--until para descargas históricas y --follow/--since para seguimiento en vivo.
Stats
dockerman container stats web
dockerman container stats web --prettystats siempre se transmite en streaming. Cada frame es una línea NDJSON con contadores de CPU, memoria, red y E/S de bloque. Pulsa Ctrl+C para detener (salida 130).
Terminal
dockerman container terminal web
dockerman container terminal web --shell /bin/bash --user rootAsigna un PTY mediante docker exec y lo conecta a tu terminal. La CLI rechaza la ejecución cuando stdin/stdout no son una TTY; los scripts basados en pipes deben usar dockerman call exec_*.
Backup y restore
Backup empaqueta el sistema de ficheros del contenedor (y los bind mounts opcionales) en un único archivo. Restore crea un nuevo contenedor a partir de ese archivo.
Inspeccionar lo que se archivaría
dockerman container backup-targets web --prettyLista los volúmenes y bind mounts del contenedor, con un flag safe_to_archive por cada bind mount.
Crear el archivo
dockerman container backup web \
--output ./web.tar.gz \
--pause \
--include-all-safe-bind-mountsUsa --include-bind-mount <índice> para activar mounts uno a uno, --no-pause para saltarte el ciclo pause/unpause, --force para anular las advertencias safe_to_archive.
Previsualizar un archivo
dockerman container backup-preview ./web.tar.gz --prettyMuestra el manifest sin restaurar nada.
Restaurar
dockerman container restore ./web.tar.gz \
--name web-restored \
--volume-strategy rename \
--port 8080:80 \
--yesRestore es destructivo (crea un contenedor que puede chocar con nombres/volúmenes existentes), por lo que --yes es obligatorio. --volume-strategy admite rename, skip u overwrite.
Las rutas de backup se resuelven en la CLI a rutas locales absolutas antes de enviarlas al daemon. El daemon rechaza rutas relativas, symlinks que apunten fuera del workspace y rutas que el usuario no pueda leer.