容器
Docker 容器的生命周期、日志、统计、终端,以及备份/恢复命令。
container 命令组覆盖完整的容器生命周期、流式附加,以及备份/恢复。所有命令都接受 --host 指定目标主机;未指定时使用 dockerman host use 设置的默认主机。
列表与详情
dockerman container list
dockerman container list --pretty
dockerman container inspect weblist 返回 GUI 使用的相同结构:id、名称、镜像、状态、端口映射、创建时间。加 --pretty 输出对齐表格。
生命周期
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 和 restart 的 --timeout 单位为秒;daemon 先发 SIGTERM,超时后发 SIGKILL。
创建与克隆
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 接受 JSON 文件,结构与 bollard::ContainerCreateOptions 一致。commit 把运行中的容器快照成新镜像。
删除
dockerman container remove web --force --volumes --yesremove 是破坏性操作,必须传 --yes(或全局 -y),否则 daemon 拒绝执行。--force 删除运行中的容器,--volumes 同时删除匿名卷。
日志
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 --json不带 --json 时,stdout 仅输出日志行,错误信息走 stderr。带 --json 时,每帧一行 流式封装。--follow 持续运行直到按 Ctrl+C(退出码 130)或流自然结束(退出码 0)。
--until 与 --follow 互斥;CLI 在打开流之前就会拒绝同时使用。历史回填用 --since/--until,持续跟踪用 --follow/--since。
统计
dockerman container stats web
dockerman container stats web --prettystats 始终是流式输出。每帧是一行 NDJSON,包含 CPU、内存、网络、块 I/O 计数。按 Ctrl+C 停止(退出码 130)。
终端
dockerman container terminal web
dockerman container terminal web --shell /bin/bash --user root通过 docker exec 分配 PTY 并附加到当前终端。当 stdin/stdout 不是 TTY 时,CLI 拒绝执行;管道脚本应改用 dockerman call exec_*。
备份与恢复
备份将容器的文件系统(以及可选的 bind mount)打包为单个归档;恢复从该归档创建新容器。
检查归档目标
dockerman container backup-targets web --pretty列出容器的卷和 bind mount,并为每个 bind mount 标注 safe_to_archive。
创建归档
dockerman container backup web \
--output ./web.tar.gz \
--pause \
--include-all-safe-bind-mounts使用 --include-bind-mount <索引> 单独选择 mount,--no-pause 跳过暂停/恢复,--force 忽略 safe_to_archive 警告。
恢复
dockerman container restore ./web.tar.gz \
--name web-restored \
--volume-strategy rename \
--port 8080:80 \
--yes恢复是破坏性操作(可能与已有名称/卷冲突),必须传 --yes。--volume-strategy 取值为 rename、skip、overwrite。
备份路径在 CLI 端解析为绝对本地路径后才发给 daemon。daemon 拒绝相对路径、指向工作区外的符号链接,以及当前用户无法读取的路径。