docker 的镜像命令详解

  1. docker images命令
    • 功能概述:用于列出本地主机上的所有镜像。这些信息包括镜像的仓库名(Repository)、标签(Tag)、镜像ID(Image ID)、创建时间(Created)和大小(Size)等。
    • 语法格式docker images [选项] [仓库名[:标签]]
    • 常用选项及示例
      • -a--all选项 :列出所有的镜像,包括中间层镜像。例如,docker images -a会将本地存储的所有镜像,无论是顶层镜像还是构建过程中的中间镜像,全部显示出来。
      • -q--quiet选项 :只显示镜像的ID。例如,docker images -q会以简洁的方式输出所有镜像的ID,这在需要批量操作镜像ID时非常有用,比如要删除所有镜像时,可以结合docker rmi命令使用。
      • --digests选项 :显示镜像的摘要信息。摘要(Digest)是基于镜像内容生成的唯一标识符,通过它可以更准确地识别镜像。例如,docker images --digests会在显示镜像信息时加入摘要列。
  2. docker pull命令
    • 功能概述:从镜像仓库(如Docker Hub或私有镜像仓库)中拉取镜像到本地。这是获取镜像的主要方式之一,当本地没有所需的镜像时,可以使用该命令下载。
    • 语法格式docker pull [选项] [仓库名[:标签]]
    • 常用选项及示例
      • 一般情况下,直接使用docker pull [仓库名:标签]就可以拉取指定的镜像。例如,docker pull ubuntu:latest会从默认的镜像仓库(通常是Docker Hub)拉取最新版本(latest标签)的Ubuntu镜像到本地。
      • --all - tags选项 :拉取指定仓库的所有标签的镜像。例如,对于一个名为my - private - repo的私有仓库中的某个镜像,如果使用docker pull --all - tags my - private - repo/my - image,会将该镜像的所有标签对应的版本全部拉取到本地。
  3. docker push命令
    • 功能概述:将本地的镜像推送到镜像仓库(如Docker Hub或私有镜像仓库)。这在构建好自己的镜像后,需要共享或保存镜像时非常有用。
    • 语法格式docker push [选项] [仓库名[:标签]]
    • 常用选项及示例
      • 假设已经登录到了一个镜像仓库,并且本地有一个名为my - app:v1.0的镜像,使用docker push my - repo/my - app:v1.0可以将该镜像推送到my - repo这个仓库中,并且标签为v1.0。需要注意的是,推送镜像之前可能需要先对镜像进行标记(使用docker tag命令),以确保镜像能够正确地推送到目标仓库和标签下。
  4. docker tag命令
    • 功能概述:用于给镜像添加标签或者重新标记镜像。这在将本地镜像推送到不同的仓库或者为镜像创建不同版本标签时非常有用。
    • 语法格式docker tag [选项] 源镜像[:源标签] 目标镜像[:目标标签]
    • 常用选项及示例
      • 例如,本地有一个镜像ID为abc123的Ubuntu镜像,默认标签为latest,如果想将其标记为my - ubuntu:v1.0,可以使用docker tag abc123 my - ubuntu:v1.0。这样就为该镜像添加了一个新的标签,可以通过docker images命令看到这个新标签的镜像。这个新标记的镜像可以根据需要推送到相应的仓库。
  5. docker rmi命令
    • 功能概述:用于删除本地主机上的镜像。可以根据镜像ID或者镜像名称和标签来删除镜像。
    • 语法格式docker rmi [选项] 镜像 [镜像...]
    • 常用选项及示例
      • 如果要删除一个名为my - image:v1.0的镜像,可以使用docker rmi my - image:v1.0。如果遇到镜像正在被容器使用的情况,可能需要先删除使用该镜像的容器,或者使用-f--force)选项来强制删除镜像。例如,docker rmi - f my - image:v1.0会强制删除指定的镜像,即使它正在被容器使用(这种操作可能会导致正在运行的容器出现问题,需要谨慎使用)。
  6. docker build命令(与镜像创建相关)
    • 功能概述:用于通过Dockerfile构建镜像。Dockerfile是一个包含了一系列指令的文本文件,用于定义如何构建一个Docker镜像。
    • 语法格式docker build [选项] 路径
    • 常用选项及示例
      • 例如,假设在当前目录下有一个名为Dockerfile的文件,用于构建一个简单的Python应用程序镜像。可以使用docker build -t my - python - app.来构建一个标签为my - python - app的镜像。其中,-t选项用于指定镜像的标签(包括仓库名和标签,这里仓库名默认为当前目录名,标签为my - python - app),最后的.表示构建上下文(Build Context),即Dockerfile所在的路径,所有在构建过程中需要的文件都应该在这个上下文中或者从这个上下文中能够访问到。
相关推荐
真上帝的左手5 小时前
十一、容器化 vs 虚拟化-Kubernetes(K8s)
云原生·容器·kubernetes
落日漫游5 小时前
K8s ConfigMap配置管理全解析
云原生·容器·kubernetes
我真的是大笨蛋5 小时前
K8S-Pod(下)
java·笔记·云原生·容器·kubernetes
紫金修道6 小时前
k8s的容器操作指令
云原生·容器·kubernetes
方渐鸿6 小时前
【2024】k8s集群 图文详细 部署安装使用(两万字)
java·运维·容器·kubernetes·k8s·运维开发·持续部署
喝杯白开水!6 小时前
K8s中的控制器DaemonSet、StatefulSet、Job、CronJob、Server发现、健康检查、存储卷(PV),相关知识总结
云原生·容器·kubernetes
晓衣7 小时前
2025“獬豸杯”全国电子数据取证竞赛-k8s服务器取证wp
服务器·经验分享·程序人生·网络安全·容器·kubernetes·学习方法
学亮编程手记7 小时前
K8S v1.33 版本主要新特性介绍
java·容器·kubernetes
我爱云计算7 小时前
K8S详解(5万字详细教程)
linux·运维·云原生·容器·kubernetes
传知摩尔狮7 小时前
Kubernetes (K8S) 最全图文总结
云原生·容器·kubernetes