【问题标题】:Delete my AWS ECR images using docker golang sdk使用 docker golang sdk 删除我的 AWS ECR 映像
【发布时间】:2021-12-12 18:33:01
【问题描述】:

我正在使用 docker golang sdk https://pkg.go.dev/github.com/docker/docker 将我的 docker 镜像推送到 AWS ECR,效果很好。

现在,我想创建一个 API 来使用相同的 SDK 删除我的 AWS ECR 图像。

问题是......

ImagePush 方法允许 registryAuth,这就是它知道将我的 docker 图像推送到哪里的方式。但是,ImageList 和 ImageRemove 函数不需要 registryAuth ! 因此,ImageList 函数显示来自我本地 ENV 的 docker 图像。

我尝试在 ImageList 调用之前执行 registryLogin 但没有运气。 我在这里做错了什么?

body, err := client.RegistryLogin(ctx, creds)
fmt.Println("login body", body)

images, err := client.ImageList(ctx,
    types.ImageListOptions{})
fmt.Println("list err", err)

【问题讨论】:

    标签: amazon-web-services docker go


    【解决方案1】:

    client.ImageRemove 方法仅从您的本地主机中删除图像,因此不需要进行身份验证。

    要从 ECR 注册表中删除图像,您需要与其 API 通信。您可以使用AWS SDK for Go APIhttps://docs.aws.amazon.com/sdk-for-go/api/service/ecr/

    【讨论】:

      猜你喜欢
      • 2018-06-17
      • 2018-03-25
      • 2020-06-10
      • 1970-01-01
      • 1970-01-01
      • 2017-12-04
      • 2019-06-04
      • 2019-07-18
      • 2017-04-14
      相关资源
      最近更新 更多