【Docker】命令 search
参考教程:https://docs.docker.com/engine/reference/commandline/search/
环境
- virtual box 6.1
- centos 7.8
- docker 19.03
命令格式
docker search [OPTIONS] TERM
使用 search 命令可以在 https://hub.docker.com/ 上搜索可用的镜像。
镜像名称结构
Registry/<Your Docker ID>/<Repository Name>:<tag>
Registry
表示使用的 Registry,通常意义上的远程仓库,可以使用私有的 Registry,如果不写,默认为 docker hub 仓库。因为仓库地址在国外,国内有一些大厂提供镜像加速器,可以加速镜像的下载速度。
除了公共的 Registry,也可以搭建私有的 Registry,一般不对外公开,内部进行镜像的共享。私有的 Registry 可以使用 Docker Registry 搭建,也可以使用 Harbor 和 Sonatype Nexus 等。
Docker ID
用户在 docker hub 上的用户名,这个相当于命名空间的概念。如果不写,默认是 docker hub 的 library 命名空间下。
Repository
仓库名称,相当于一个项目的概念,不能省略。
tag
类似于版本的概念,如果不写,默认为 lastest,即最新。
命令选项
名称 | 默认值 | 描述 |
---|---|---|
--automated |
已过时,只显示自动构建的镜像,使用 filter 替代 | |
--filter , -f |
根据提供的条件过滤输出 | |
--format |
格式化输出 | |
--limit |
25 |
搜索结果的最大显示数量 |
--no-trunc |
不截断输出 | |
--stars , -s |
已过时,根据 star 数进行过滤,使用 filter 替代 |
示例
根据名称搜索
$ docker search busybox
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
progrium/busybox 71 [OK]
radial/busyboxplus Full-chain, Internet enabled, busybox made f… 32 [OK]
yauritux/busybox-curl Busybox with CURL 10
arm32v7/busybox Busybox base image. 8
armhf/busybox Busybox base image. 6
odise/busybox-curl 4 [OK]
arm64v8/busybox Busybox base image. 3
s390x/busybox Busybox base image. 2
prom/busybox Prometheus Busybox Docker base images 2 [OK]
aarch64/busybox Busybox base image. 2
arm32v6/busybox Busybox base image. 2
p7ppc64/busybox Busybox base image for ppc64. 2
joeshaw/busybox-nonroot Busybox container with non-root user nobody 2
i386/busybox Busybox base image. 2
vukomir/busybox busybox and curl 1
spotify/busybox Spotify fork of https://hub.docker.com/_/bus… 1
ppc64le/busybox Busybox base image. 1
sou856099/busybox 0
amd64/busybox Busybox base image. 0
concourse/busyboxplus 0
arm32v5/busybox Busybox base image. 0
emccorp/busybox Busybox 0
ggtools/busybox-ubuntu Busybox ubuntu version with extra goodies 0 [OK]
e2eteam/busybox 0
限制搜索数量
$ docker search busybox --limit 4
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
radial/busyboxplus Full-chain, Internet enabled, busybox made f… 32 [OK]
yauritux/busybox-curl Busybox with CURL 10
vukomir/busybox busybox and curl 1
不截断输出
描述信息栏不会被截断,会显示完整的描述信息。
$ docker search busybox --limit 4 --no-trunc
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
radial/busyboxplus Full-chain, Internet enabled,
busybox made from scratch. Comes in git and cURL flavors. 32 [OK]
yauritux/busybox-curl Busybox with CURL 10
vukomir/busybox busybox and curl 1
根据 stars 数量过滤
$ docker search busybox -s 1000
Flag --stars has been deprecated, use --filter=stars=3 instead
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
$ docker search busybox --stars 1000
Flag --stars has been deprecated, use --filter=stars=3 instead
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
$ docker search busybox --filter stars=1000
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
根据自动化过滤
$ docker search busybox --automated
Flag --automated has been deprecated, use --filter=is-automated=true instead
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
progrium/busybox 71 [OK]
radial/busyboxplus Full-chain, Internet enabled, busybox made f… 32 [OK]
odise/busybox-curl 4 [OK]
prom/busybox Prometheus Busybox Docker base images 2 [OK]
ggtools/busybox-ubuntu Busybox ubuntu version with extra goodies 0 [OK]
$ docker search busybox --filter is-automated=true
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
progrium/busybox 71 [OK]
radial/busyboxplus Full-chain, Internet enabled, busybox made f… 32 [OK]
odise/busybox-curl 4 [OK]
prom/busybox Prometheus Busybox Docker base images 2 [OK]
ggtools/busybox-ubuntu Busybox ubuntu version with extra goodies 0 [OK]
根据官方镜像过滤
$ docker search busybox --filter is-official=true
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
busybox Busybox base image. 1974 [OK]
格式化输出
格式化选项(--format)使用 Go 模板漂亮地打印搜索输出,Go 模板的有效占位符为:
Placeholder | Description |
---|---|
.Name |
镜像名称 |
.Description |
镜像描述 |
.StarCount |
stars 数量 |
.IsOfficial |
如果是官方镜像,显示 “OK” |
.IsAutomated |
如果是自动化构建,显示“OK” |
$ docker search --format "{{.Name}}: {{.StarCount}}" nginx --limit 3
nginx: 13652
jwilder/nginx-proxy: 1864
bitnami/nginx: 88
$ docker search --format "table {{.Name}}\t{{.IsAutomated}}\t{{.IsOfficial}}" nginx --limit 4
NAME AUTOMATED OFFICIAL
nginx [OK]
jwilder/nginx-proxy [OK]
richarvey/nginx-php-fpm [OK]
bitnami/nginx [OK]
总结
介绍了 search 命令的使用,除了根据名称搜索,还可以根据一些限制条件进行过滤。介绍了 --format
选项的使用方法,对输出的内容进行格式化。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!