docker镜像管理命令详解

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: docker镜像管理命令详解

image.png

Docker是一种流行的容器化平台,它允许用户构建、分享和运行容器化的应用程序。在Docker中,镜像是构建和创建容器的基础。之前的文章我们介绍了docker安装还有docker镜像的拉取,本文将介绍一些常用的Docker镜像管理命令,帮助我们管理和操作Docker镜像。

docker images

docker images可以查看本地已经下载的镜像,如下:

docker images [OPTIONS] [REPOSITORY[:TAG]]

OPTIONS参数说明

options 作用
-a, --all 列出本地所有的镜像(含中间镜像层,默认情况下,过滤掉中间映像层)
--digests 显示镜像的摘要信息
-f, --filter filter 显示满足条件(filter)的镜像
--format string 使用模板格式化输出
--no-trunc 显示完整的镜像信息
-q, --quiet 只显示镜像ID

使用示例

image.png

标头各列含义

docker images
REPOSITORY        TAG       IMAGE ID       CREATED        SIZE
jenkins/jenkins   lts       825c3e86c65d   20 hours ago   471MB
python            3.8       0628e6793418   2 weeks ago    997MB
hello-world       latest    9c7a54a9a43c   7 weeks ago    13.3kB


#REPOSITORY            # 镜像的仓库名
#TAG                   # 镜像的标签(版本)  ---lastest 表示最新版本
#IMAGE ID              # 镜像的id
#CREATED               # 镜像的创建时间
#SIZE                  # 镜像的大小

docker search

docker search命令用于从docker-hub搜索查找镜像,语法如下:

docker search [OPTIONS] TERM

OPTIONS参数说明

option 作用
-f, --filter filter 根据提供的 filter 过滤输出
--limit int 搜索结果条数最大为 int(默认25)
--no-trunc 显示完整的镜像描述 description
--format 使用 Go 模板进行美观打印

使用示例

image.png

--filter 的使用示例

我们在搜索镜像时,可以添加更多的过滤条件,--filter就允许我们添加不同的过滤条件,搜索到我们需要的镜像,如下:

  1. 搜索 star 数量>3 的 tomcat 镜像并打印详细描述
docker search --filter=stars=3 --no-trunc tomcat
NAME                      DESCRIPTION                                                                                            STARS     OFFICIAL   AUTOMATED
tomcat                    Apache Tomcat is an open source implementation of the Java Servlet and JavaServer Pages technologies   3561      [OK]       
tomee                     Apache TomEE is an all-Apache Java EE certified stack where Apache Tomcat is top dog.                  109       [OK]       
bitnami/tomcat            Bitnami Tomcat Docker Image                                                                            49                   [OK]
eclipse/rdf4j-workbench   Dockerfile for Eclipse RDF4J Server and Workbench, based on the Tomcat 8.5 Alpine image.               6                    
jelastic/tomcat           An image of the Tomcat Java application server maintained by Jelastic PaaS.                            4                    
rightctrl/tomcat          CentOS , Oracle Java, tomcat application ssl https                                                     7                    [OK]
amd64/tomcat              Apache Tomcat is an open source implementation of the Java Servlet and JavaServer Pages technologies   6                    
arm64v8/tomcat            Apache Tomcat is an open source implementation of the Java Servlet and JavaServer Pages technologies   8
  1. 搜索 star 数量>3000 的 mysql 镜像
docker search mysql --filter=STARS=3000 
NAME      DESCRIPTION                                      STARS     OFFICIAL   AUTOMATED
mysql     MySQL is a widely used, open-source relation…   14264     [OK]       
mariadb   MariaDB Server is a high performing open sou…   5453      [OK]

docker rmi

要删除不再需要的Docker镜像,可以使用docker rmi命令。执行以下命令以删除指定的镜像:

docker rmi [OPTIONS] IMAGE [IMAGE...]

options参数说明

  • -f,强制删除
  • --no-prune,不移除该镜像的过程镜像,默认移除。

例如,我们要删除docker中的mysql镜像,命令如下:

docker rmi mysql

运行结果如下:

image.png

使用镜像id一样可以将镜像删除,如下图:

image.png

docker tag

我们可以通过docker tag命令来对已有镜像进行标记,修改镜像的名称以及tag
,命令如下:

docker tag <现有镜像名称>:<现有标签> <新镜像名称>:<新标签>

例如,我们要将hello-world镜像标记为hogwarts镜像,命令如下:

docker tag hello-world:latest hogwarts:muller

image.png

总结

通过使用这些常用的Docker镜像管理命令,我们可以方便地管理和操作Docker镜像。我们可以查看已下载的镜像、下载新的镜像、删除不再需要的镜像、标记镜像以及搜索特定的镜像。

镜像管理对于在Docker中构建、部署和维护应用程序至关重要。请记住,在执行任何涉及镜像的操作之前,务必小心,并确保了解其影响。合理地管理和操作Docker镜像可以帮助我们更好地组织和维护应用程序的镜像库。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
1月前
|
JavaScript Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
267 100
|
1月前
|
缓存 安全 Linux
优化Docker镜像大小的多阶段构建实践
优化Docker镜像大小的多阶段构建实践
225 99
|
1月前
|
缓存 Docker 容器
优化Docker镜像大小的五个实用技巧
优化Docker镜像大小的五个实用技巧
203 98
|
1月前
|
安全 Go Docker
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
|
9天前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
131 5
|
9天前
|
存储 Java Linux
【Docker】(2)还在浏览网页寻找Docker命令?本文全面列举与使用Docker里的各个命令!想要什么命令直接从本文拿!
docker有着比VM更少的抽象层 由于Docker不需要Hypervisor实现硬件资源虚拟化,运行在Docker容器上的程序直接使用的都是实际物理机的硬件资源 因此在CPU、内存利用率上Docker将会在效率上有明显优势 docker利用的时宿主机的内核,而不需要加载操作系统OS内核 当新建一个容器时,Docker不需要和虚拟机一样重新加载一个操作系统内核 进而避免引寻、加载操作系统内核返回等比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载OS,返回新建过程时分钟级别的。 而Docker由于直接利用宿主机的操作系统,则省略了返回过程,因此新建一个Docker容器只需
83 1
|
1月前
|
Java Docker 容器
使用Docker多阶段构建优化镜像大小
使用Docker多阶段构建优化镜像大小
79 8
|
2月前
|
缓存 Ubuntu Docker
Ubuntu环境下删除Docker镜像与容器、配置静态IP地址教程。
如果遇见问题或者想回滚改动, 可以重启系统.
186 16
|
2月前
|
运维 关系型数据库 数据库
应用官方 Docker 镜像已成熟,团队为何转向 Websoft9 而不再依赖 Bitnami
随着云原生发展,部署工具从 Bitnami 转向 Websoft9。后者基于官方镜像,提供多应用编排与统一运维,提升部署效率与维护能力,适合多系统协同场景。
应用官方 Docker 镜像已成熟,团队为何转向 Websoft9 而不再依赖 Bitnami
|
2月前
|
Ubuntu 网络安全 PHP
如何使用vscode的Docker插件管理ubuntu 拉取服务器的镜像以及创建容器
本测试镜像旨在记录使用vscode的Docker插件拉取病创建Dockerfile,以及拉取镜像。
下一篇
oss教程