当我推送覆盖现有图像(名称和标签相同)的新图像时,先前的图像刚刚从其标签中删除,并保留在存储库中。
是否可以将gcr
或我的docker命令配置为不保留过期的映像?我可以查询没有标签的图像并手动删除它们,但这似乎很荒谬。
我的图片推送代码:
export GCLOUD_PROJECT="..."
gcloud auth activate-service-account --key-file gcloud-api-key.json
gcloud config set project $GCLOUD_PROJECT
gcloud auth configure-docker --quiet
docker build -t my_image .
docker tag my_image asia.gcr.io/$GCLOUD_PROJECT/my_image:dev
docker push asia.gcr.io/$GCLOUD_PROJECT/my_image:dev
答案 0 :(得分:0)
不幸的是,当您推送具有相同标签的新docker映像时,不会自动从GCR删除。另一方面,google提供了自动执行该API的API,您可以通过添加delete命令如下更改脚本:
@GET("EN_PRODUCTLIST{catId}")
fun getProductByCatId(@Path(catId) catId:String):Deferred<SomeProduct>
您可以在Google GCR文档https://cloud.google.com/container-registry/docs/managing#deleting_images中找到更好的信息。