这个命令是使用Docker的必备技能。我们使用的各种官方镜像,一般都能通过这个命令找到。
命令:
docker search
描述:
在Docker Hub上查找镜像。Docker Hub是为开发者和开源贡献者设计的容器镜像注册中心,它允许用户查找、使用和分享他们的容器镜像。
用法:
docker search [OPTIONS] TERM
选项:
选项 | 描述 |
---|---|
-f,–filter | 根据提供的条件过滤输出 |
–format | 使用Go模板进行搜索结果的漂亮打印 |
–limit | 搜索结果的最大数量 |
–no-trunc | 不要截断输出 |
示例:
如上图所示,我通过search命令查找nginx的镜像。列表一共帮我搜索出24行,每行分为4列。从左到右依次为镜像名称(NAME)、镜像描述(DESCRIPTION)、星标数量(STARS)和是否官方维护(OFFICIAL)。
NAME是镜像的名字,没什么好说的。DESCRIPTION是描述,我们看到描述内容过长,默认是显示不全的,后面会以…代替。STARS是在Docker Hub上,该镜像获得收藏的数量。而OFFICIAL指的是该镜像是否为官方维护。一般官方维护的镜像稳定性、安全性、可靠性都比较好。而STARS也从侧面反映该镜像使用受欢迎程度。所以我们尽量选择官方的且STARS比较高的镜像。
选项示例1:-f,–filter
这个选项的内容需要key-value的形式,如果大于一组key-value,则需要多个–filter选项。
目前支持的过滤器有:
stars (整数 – 镜像拥有的星标数量)
is-official (布尔值 – true或false) – 镜像是否是官方的
具体如图所示:
这个过滤条件是寻找星标数量至少30个,且要求是官方的镜像。
选项示例2:–format
该选项使用Go模板进行搜索结果的漂亮打印。怎么漂亮呢?我们先看看–format的占位符都有哪些。
占位符 | 描述 |
---|---|
.Name | 镜像名字 |
.Description | 镜像描述 |
.StarCount | 星标数量 |
.IsOfficial | 是否官方 |
我们将4种占位符格式化一下看看会发生什么。
好吧,我看结果并不漂亮。漂亮与否和你的格式组织有关系。上面我使用”—“来连接每两个占位符,结果很糟糕。你可以尝试用你自己的方式,任意组合它们,看看结果是否比我的要好?
选项示例3:–limit
该选项限制结果的最大数量。
这个选项很简单是不是,nginx结果最多有24行,我只显示排列在最上面的6行。
选项示例4:–no-trunc
该选项不截断输出。前面我们看到描述一栏,内容较多,总是显示不全,这个选项就是将描述显示全的选项。
看吧,描述内容全部显示了。