列出本地镜像。
docker images [OPTIONS] [REPOSITORY[:TAG]]
OPTIONS说明:
-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
–digests :显示镜像的摘要信息;
-f :显示满足条件的镜像;
–format :指定返回值的模板文件;
–no-trunc :显示完整的镜像信息;
-q :只显示镜像ID
# 查看所有悬空镜像
docker images --filter dangling=true
# 清除所有悬空镜像
docker image prune
docker build 命令用于使用 Dockerfile 创建镜像。
docker buildx build [OPTIONS] PATH | URL | -
OPTIONS说明:
docker build -t nodetodo:v1.0.0 -f Dockerfile .
删除本地一个或多个镜像。
docker rmi [OPTIONS] IMAGE [IMAGE...]
OPTIONS说明:
-f :强制删除;
–no-prune :不移除该镜像的过程镜像,默认移除。
标记本地镜像,将其归入某一仓库。
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
将指定镜像保存成 tar 归档文件。
docker save [OPTIONS] IMAGE [IMAGE...]
OPTIONS 说明:
-o :输出到的文件。
docker save -o mynginx.tar mynginx:v1
# 解压文件,查看内容
tar vxf mynginx.tar -C mynginx
导入使用 docker save 命令导出的镜像。
docker load [OPTIONS]
OPTIONS 说明:
–input , -i : 指定导入的文件,代替 STDIN。
–quiet , -q : 精简输出信息。
示例:
docker load -i mynginx.tar
从归档文件中创建镜像。
docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
OPTIONS说明:
-c :应用docker 指令创建镜像。
-m :提交时的说明文字。
示例:
docker import mynginx.tar mynginx:v3
从容器创建一个新的镜像。
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS说明:
-a :提交的镜像作者。
-c :使用Dockerfile指令来创建镜像。
-m :提交时的说明文字。
-p :在commit时,将容器暂停。
docker login : 登陆到一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub。
docker logout : 登出一个Docker镜像仓库,如果未指定镜像仓库地址,默认为官方仓库 Docker Hub。
docker login [OPTIONS] [SERVER]
docker logout [OPTIONS] [SERVER]
OPTIONS说明:
-u :登陆的用户名。
-p :登陆的密码。
示例:
docker login -u 用户名 -p 密码
docker logout
从镜像仓库中拉取或者更新指定镜像。
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
OPTIONS说明:
-a :拉取所有 tagged 镜像。
–disable-content-trust :忽略镜像的校验,默认开启。
将本地的镜像上传到镜像仓库,注意,要先登陆到镜像仓库。
docker push [OPTIONS] NAME[:TAG]
OPTIONS说明:
–disable-content-trust :忽略镜像的校验,默认开启。
从Docker Hub查找镜像。
docker search [OPTIONS] TERM
OPTIONS说明:
–automated :只列出 automated build类型的镜像。
–no-trunc :显示完整的镜像描述。
-f <过滤条件>:列出收藏数不小于指定值的镜像。
# 从 Docker Hub 查找所有镜像名包含 nginx,并且收藏数大于 10 的镜像
docker search -f stars=10 nginx
参数说明:
NAME: 镜像仓库源的名称
DESCRIPTION: 镜像的描述
OFFICIAL: 是否 docker 官方发布
stars: 类似 Github 里面的 star,表示点赞、喜欢的意思。
AUTOMATED: 自动构建。
通过本文的介绍,掌握一系列重要的Docker镜像管理命令,从而让容器部署变得更加得心应手。无论是在开发、测试还是生产环境中,这些命令都能够帮助更好地管理和优化Docker镜像,提升云原生技能,加速容器部署,提高工作效率。