使用 docker golang sdk 删除我的 AWS ECR 映像

我正在使用 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)


慕工程0101907
浏览 159回答 1
1回答

蛊毒传说

该client.ImageRemove方法仅从您的本地主机中删除图像,因此不需要进行身份验证。要从 ECR 注册表中删除图像,您需要与其 API 通信。您可以使用AWS SDK for Go API: https ://docs.aws.amazon.com/sdk-for-go/api/service/ecr/
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go