问题标签 [aws-ecr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
7250 浏览

docker - aws ecs中docker容器之间通过rabbitmq进行通信

我的团队正在开发一个包含 20 个微服务的应用程序,这将部署在 aws ecs ec2 实例中。我计划在集群中启动 3 个 aws ec2 实例。每个微服务都有它的任务定义和服务。

构建 docker 容器,推送到 aws ecr,然后使用 Jenkinsfile 通过 jenkins 部署到 ecs。在 taskdefinition json 文件中,我将主机端口设置为 0,这样每个 docker 容器主机端口都是随机的,如果我们将所需的服务计数增加到 2 或更多,则不会有任何端口冲突。

我猜同一任务定义上的容器可以使用链接进行通信,但在我的情况下,我们无法预测 docker 容器在哪个实例上。

如果我们在不同的服务器上使用 rabbitmq,它如何与不同的微服务通信?我在任务定义中使用网络模式作为“默认网络”,我应该将其更改为 awsvpc 吗?

0 投票
1 回答
456 浏览

jenkins - ecr 中的 elasticbeanstalk 和 docker 映像存在问题

我在 ECR 中有一个 docker 映像,我想使用 beanstalk 进行部署。我不断得到

在我的 Jenkins 中,我已经包围了我的 eb 命令(在 shell 中)

脚本 { withAWS(credentials:'aws-credentials') {

我什至给了这个用户 AmazonEC2ContainerRegistryFullAccess 看看是否有帮助,但没有

我的 Dockerrun.aws.json 里面有这个

0 投票
1 回答
1103 浏览

amazon-web-services - 如何修复 AWS docker pull

我在从 AWS 的存储库中提取 docker 时遇到问题。

我总是有这个错误:

来自守护进程的错误响应:拒绝 [repository name] 的 pull 访问,repository 不存在或可能需要 'docker login'</p>

我确实从本地机器成功地将图像推送到存储库中。现在在服务器上,我需要从存储库中提取它并运行它。我使用 SSH 命令和 .pem 密钥登录到 AWS ubuntu 服务器。之后,我使用这些命令登录并拉取:

  • aws ecr get-login --no-include-email --region eu-central-1
  • docker pull [Image URI from repository name]

我可以在 ECR->Repositories 中看到我的图像。登录似乎成功,它在我运行后返回令牌。我在 Windows 上使用 git bash 来完成所有这些工作。

当我运行 docker images 时,我看不到存储库中的图像,它应该只有在 pull 之后才存在?

我究竟做错了什么?

0 投票
2 回答
919 浏览

amazon-web-services - AWS ECR GetAuthorizationToken 问题

我有 Jenkins 设置,用于将我的 docker 映像部署到 Amazon ECR 存储库。
我在我的 AWS 账户中为 IAM 用户启用了 2FA。我已将所有管理策略附加到我的 IAM 用户。我正在按照以下命令将我的 docker 映像源推送到 Amazon ECR 存储库。

参考链接:https ://aws.amazon.com/premiumsupport/knowledge-center/authenticate-mfa-cli/

詹金斯代码:

我在部署到 Amazon ECR 时遇到了这个问题。

  1. “调用 GetSessionToken 操作时发生错误 (AccessDenied):无法使用会话凭据调用 GetSessionToken”

  2. “调用 GetSessionToken 操作时发生错误 (AccessDenied):MultiFactorAuthentication 失败,无法验证 MFA 代码”

参考链接: AWS ECR GetAuthorizationToken

0 投票
2 回答
3892 浏览

amazon-web-services - 无法通过“docker pull”从单独的帐户访问 ECR 存储库

我正在尝试允许一个 AWS 账户(下面称为“第二个”)在另一个 AWS 账户(下面称为“第一个”)的 ECR 存储库中提取图像。

我正在关注这些文件:

我已将以下权限添加到 ECR 存储库:

然后我运行这个命令:eval "$(aws ecr get-login --no-include-email --region us-east-1 --profile second --registry-ids <second> <first>)"

我得到了这个结果:

我将商店更改为config.json临时只是为了确保我可以看到身份验证已按预期添加到文件中,它是:

最后我运行:docker pull <first>.dkr.ecr.us-east-1.amazonaws.com/<repo>:<tag>并得到这个结果:

我已经三次检查了所有帐号是否正确,回购肯定在那里。如果我使用相同的get-login命令登录,我可以拉它,但是--profile first.

我不知道还能尝试什么才能拉出这张图片!

Principal将ECR 权限更改为"AWS": "arn:aws:iam::<second>:user/<user>"没有任何区别。

0 投票
1 回答
17771 浏览

amazon-web-services - 如何通过 AWS EKS 在 ECR 中使用 Docker 映像

我创建了 EKS 集群。我在 ECR 中也有 docker 映像。我不确定如何在 YAML 的 pod 定义中使用 docker 映像。

是否需要秘密提供凭据?或 EKS IAM 角色应该拥有 ECR 的权限?

对于 ECR 中的图像,是否需要更改权限?

0 投票
1 回答
887 浏览

amazon-web-services - CodePipeline:如何将 ECR 与 Elastic Beanstalk 集成?

我正在尝试将 ECR 和 Elastic Beanstalk 与以下 CodePipeline 设置相结合:

  1. 来源:代码提交
  2. Build :buildspec.yml构建 docker 镜像并将其推送到 ECR 存储库
  3. 部署:弹性豆茎

请注意,第 2 步不包含任何工件,它只是通过使用从源代码构建新图像docker build -t <my-image> .并将其推送到具有最新标签的 ECR。

我的问题是:

  1. 如何从第 3 步触发 beanstalk 以使用最新的 ECR 图像?
    1. 步骤 1/2 中应包括哪些工件(如果有)?
    2. 工件是否Dockerrun.aws.json每次都指向 ECR 图像文件?
  2. 替代方法:我是否应该将整个源代码部署到 beanstalk 并让它使用包中的 Dockerfile 来构建它?
    1. 如果是这样 - 我在哪里可以看到图像的构建过程?
    2. 有没有办法从源代码中选择不同的 Dockerfile?
0 投票
3 回答
1503 浏览

amazon-web-services - AWS Elastic Beanstalk Docker 来自 ECR 错误“Dockerrun.aws.json 中未指定 Docker 映像”

我正在尝试将 Docker 映像从 AWS ECR 部署到 Elastic Beanstalk。我已经为 S3 和 ECR 设置了 Elastic Beanstalk 所需的所有权限。这些服务之间的通信似乎很好,但是在尝试启动 Elastic Beanstalk 环境时出现以下错误:

  1. No Docker image specified in either Dockerfile or Dockerrun.aws.json. Abort deployment.
  2. [Instance: i-01cf0bac1863e4eda] Command failed on instance. Return code: 1 Output: No Docker image specified in either Dockerfile or Dockerrun.aws.json. Abort deployment. Hook /opt/elasticbeanstalk/hooks/appdeploy/pre/03build.sh failed. For more detail, check /var/log/eb-activity.log using console or EB CLI.

我正在上传一个Dockerrun.aws.json指向 ECR 上图像的单曲。下面是我的Dockerrun.aws.json文件:

docker 映像确实存在于 ECR 上containerDefinitions Name字段中指定的位置。

我在这里错过了什么吗?

0 投票
4 回答
16897 浏览

amazon-web-services - 从“aws ecr get-login”获取结果时出现问题

给出以下命令时出现以下错误。

错误

我的管理员已授予我访问此“GetAuthorizationToken”资源的权限。

我认为问题很可能是 'arn:aws:iam::314xxxx91079:user/git' 用户被用于此命令。当我登录到 aws 控制台时,我看到我的用户名 (IAM) 如下。

如何使“获取登录”以使用此用户名而不是用户/git。我对 aws cli 很陌生,这个命令恰好是构建步骤之一。

0 投票
0 回答
1043 浏览

amazon-web-services - 是否可以在不使用 docker login 的情况下从 ECR 中提取图像

我有一个运行 docker 的 ECR 和 EC2 实例。我想做的是不先做就拉图像docker login

有可能吗?如果是,我应该将哪种策略附加到 EC2 实例和/或 ECR 存储库?我做了很多实验,但没有成功。

请 - 没有关于如何使用 aws get-login 的建议。我的目标是通过使用 IAM 策略/角色来摆脱它。