【Docker】命令 search
阿新 • • 發佈:2020-10-23
參考教程: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
選項的使用方法,對輸出的內容進行格式化。