以下是常用的 Docker 运维命令的详细说明,包括所有主要参数、使用形式、使用场景以及注意事项。
1. Docker 镜像操作命令
1.1 拉取镜像
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
参数:
NAME
:镜像名称。TAG
:镜像标签(默认为latest
)。@DIGEST
:镜像的内容地址。--all-tags
,-a
:拉取仓库中的所有标签。--disable-content-trust
:忽略镜像验证 (默认开启)。--platform
:设置平台(例如,linux/amd64)。
案例:
docker pull nginx:latest
docker pull --all-tags ubuntu
使用场景:
从 Docker Hub 或其他镜像仓库下载所需的镜像。
注意事项:
- 确保网络连接正常,拉取镜像需要访问外部仓库。
- 使用
--all-tags
参数会拉取镜像仓库中的所有标签,占用较多存储空间。
1.2 列出镜像
docker images [OPTIONS] [REPOSITORY[:TAG]]
参数:
-a
,--all
:显示所有镜像(默认隐藏中间层)。--digests
:显示镜像摘要。-f
,--filter
:根据条件过滤显示内容。--format
:指定返回值的格式。--no-trunc
:显示完整的镜像信息。REPOSITORY
:仓库名称。TAG
:镜像标签。
案例:
docker images
docker images --digests
使用场景:
查看本地已有的 Docker 镜像。
注意事项:
- 使用
--filter
参数可以方便地过滤出特定条件的镜像。 --no-trunc
参数会显示完整的镜像信息,有助于详细检查镜像。
1.3 删除镜像
docker rmi [OPTIONS] IMAGE [IMAGE...]
参数:
IMAGE
:镜像 ID 或名称。-f
,--force
:强制删除镜像。--no-prune
:不要删除悬空的父镜像。
案例:
docker rmi nginx:latest
docker rmi -f $(docker images -q)
使用场景:
删除本地不再需要的 Docker 镜像,释放存储空间。
注意事项:
- 强制删除运行中的镜像会导致相关容器停止运行。
- 删除镜像前确保没有容器在使用,否则需要使用
-f
参数强制删除。
2. 容器操作命令
2.1 运行容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
参数:
-d
,--detach
:后台运行容器并返回容器 ID。-i
,--interactive
:保持标准输入打开。-t
,--tty
:分配一个伪终端。--name
:为容器指定名称。-p
,--publish
:映射端口(格式:hostPort:containerPort)。-P
,--publish-all
:随机映射所有端口。-v
,--volume
:绑定挂载一个卷。--rm
:容器停止后自动删除。-e
,--env
:设置环境变量。--env-file
:从文件读取环境变量。--network
:连接到指定网络。--restart
:容器重启策略(如:no, on-failure, always, unless-stopped)。
案例:
docker run -d -p