Dockerman 文档
命令行

容器

Docker 容器的生命周期、日志、统计、终端,以及备份/恢复命令。

container 命令组覆盖完整的容器生命周期、流式附加,以及备份/恢复。所有命令都接受 --host 指定目标主机;未指定时使用 dockerman host use 设置的默认主机。

列表与详情

dockerman container list
dockerman container list --pretty
dockerman container inspect web

list 返回 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-old

stoprestart--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 --yes

remove 是破坏性操作,必须传 --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 --pretty

stats 始终是流式输出。每帧是一行 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 backup-preview ./web.tar.gz --pretty

显示 manifest 而不实际恢复。

恢复

dockerman container restore ./web.tar.gz \
  --name web-restored \
  --volume-strategy rename \
  --port 8080:80 \
  --yes

恢复是破坏性操作(可能与已有名称/卷冲突),必须传 --yes--volume-strategy 取值为 renameskipoverwrite

备份路径在 CLI 端解析为绝对本地路径后才发给 daemon。daemon 拒绝相对路径、指向工作区外的符号链接,以及当前用户无法读取的路径。