amazon-web-services - AWS ECR 尝试使用 Get-ECRLoginCommnad 失败
问题描述
我是 AWS 的新手,我正在尝试在 Windows 上的 ECR 上注册图像。为此,我使用 PowerShell 连接到 AWS。
下面是我的版本
PS C:\> aws --version
aws-cli/2.0.0 Python/3.7.5 Windows/10 botocore/2.0.0dev4
我使用 aws configure 命令登录。我去了用户 - > createdUser - > 访问密钥和秘密密钥的安全凭证。
当我使用Get-ECRLoginCommand
PS C:\> Get-ECRLoginCommand
Get-ECRLoginCommand : The request signature we calculated does not match the signature you provided. Check your AWS
Secret Access Key and signing method. Consult the service documentation for details.
At line:1 char:1
+ Get-ECRLoginCommand
+ ~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (Amazon.PowerShe...inCommandCmdlet:GetECRLoginCommandCmdlet) [Get-ECRL
oginCommand], InvalidOperationException
+ FullyQualifiedErrorId : Amazon.ECR.AmazonECRException,Amazon.PowerShell.Cmdlets.ECR.GetECRLoginCommandCmdlet
有人可以帮我如何在 ECR 上注册 docker 映像吗?
解决方案
即使在 Windows 上,
在 Linux 和 macOS 上使用推送指令更容易。
您只需要安装 AWS CLI、docker 并设置 AWS 凭证。
安装 AWS CLI 版本 2
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi
确认安装
C:\> aws --version
aws-cli/2.2.43 Python/3.8.8 Windows/10 exe/AMD64 prompt/off
在 AWS IAM 中,创建具有所需角色的用户。
不建议这样做。我只是用 AdministratorAccess 创建了一个用户。
设置您的 AWS 凭证
aws configure
AWS Access Key ID [None]: Access Key
AWS Secret Access Key [None]: Secret Key
Default region name [None]: us-west-2
Default output format [None]: json
现在,验证 Amazon ECR 注册表的 docker
aws ecr get-login-password | docker login --username AWS --password-stdin YOUR-REGISTRY-URL
Login Succeeded
最后,推送一个 Docker 镜像
docker build -t YOUR-BUILD-NAME .
docker tag YOUR-BUILD-NAME:latest YOUR-REGISTRY-URL/YOUR-BUILD-NAME:latest
docker push YOUR-REGISTRY-URL/YOUR-BUILD-NAME:latest
推荐阅读
- scala - 如何展平DataFrame中的列
- swift - account.register 的无效请求签名错误
- android - framelayout.addView(view) 重叠/删除工具栏?
- c# - 使用自定义队列处理器在 WebJobs 上获取单例行为
- ms-access - 从连续表单中删除空文本框,但显示带有数据的文本框
- wordpress - 重新排列(按优先级排序)Woocommerce 我的帐户字段
- java - 了解spring-integration service-activator
- reactjs - 使用 Create React App 运行 Jest 测试时文档为空
- postgresql - plpgsql 用于计算偏度和峰度的 Postgresql 函数
- c# - 没有 Azure 或领域的 UWP 的 Xamarin 离线第一个解决方案