如何在谷歌容器注册表中列出图像和标签

时间:2016-04-06 15:37:00

标签: gcloud google-kubernetes-engine

寻找使用gcloud命令行获取容器引擎注册表图像标记的方法。

这个命令 cloud docker search gcr.io/PROJECT/myimage 回报 NAME DESCRIPTION STARS OFFICIAL AUTOMATED PROJECT/myimage 0 但我想看到目前使用的标签,就像gcloud web控制台显示的那样。

enter image description here

我运行此命令的机器从docker hub中提取图像,标记它们,然后将它们推送到带有gcloud docker push...

的Google容器引擎

我怀疑我可能会问如何让本地docker客户端针对google repo和docker hub repo执行命令,这样我就可以获得docker images个列表

******更新:请参阅https://stackoverflow.com/a/38061253/201911了解最新版本中的此功能。

3 个答案:

答案 0 :(得分:7)

gcloud container images list-tags gcr.io/PROJECT/myimage https://cloud.google.com/sdk/gcloud/reference/container/images/list-tags

答案 1 :(得分:4)

让我告诉你解决你的痛苦:

ZONE=eu
PROJECT_ID=testproject
PROJECT_URL=gs://${ZONE}.artifacts.${PROJECT_ID}.appspot.com/containers/repositories/library

# this generates images list
gsutil ls $PROJECT_URL | sed -e 's#/$##' -e 's#.*/##' 

IMAGE_URL=gs://${ZONE}.artifacts.${PROJECT_ID}.appspot.com/containers/repositories/library/${IMAGE_NAME}/

# this generates tags list for specified image
gsutil ls $IMAGE_URL | sed -n '/\/tag_/ { s#.*/tag_##p }'

在大多数情况下,这将为您服务。 您需要具有读取权限才能列出GCE中该特定存储桶中的文件。

答案 2 :(得分:1)

gcloud目前无法使用此功能。 gcloud docker只是docker命令行工具的一个包装器,它不容易公开您对远程存储库的信息。

在将来的某个时刻,gcloud可能会支持此功能。