问题标签 [amazon-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 投票
1 回答
158 浏览

amazon-web-services - AWS ECR 标签可变性与生命周期策略

问题是 ECR 如何计算具有相同标签的图像。例如,如果我推送 1 个时间标签“base-old”,然后推送 10 次带有标签“base”标签的图像,并且我有一个生命周期规则,如果删除“base-old”或不是?谢谢!

0 投票
1 回答
419 浏览

aws-codepipeline - 我应该如何在我的 CDK 构建脚本中使用来自 aws ECR 存储库的基于 Windows 的自定义构建工具 docker 映像作为环境

我正在为此创建 Windows WPF 应用程序的 aws codepipeline 我已经创建了自定义 docker 映像,其中包含 VS2017 构建工具,并且该映像将作为构建环境来构建我所有的 .Net 框架相关应用程序。我已经从 UI 即 aws 控制台成功创建了 aws 管道,但是我正在尝试使用 typescript 为同一事物创建 CDK 堆栈,下面是我的代码

在此代码中,我可以指定environment哪个WIN_SERVER_CORE_2016_BASE是 aws 提供的基本映像,但我想指定我在 aws ECR 存储库中准备好的自定义 docker 映像。

有人可以帮我解决这个问题吗?我在互联网上找不到 Windows .Net 框架的文档。

0 投票
3 回答
1013 浏览

docker - 即使登录 docker 并成功,也无法将图像推送到 ECR

尝试将图像推送到 ECR 时,我总是收到“无基本身份验证”错误。ECR 在 us-east-1 中。

这是登录命令

我得到这样的回应

我复制此响应并运行命令,而不是得到此响应

我假设我成功登录了 AWS 和 docker,所以我尝试将图像推送到 ECR

比响应是这样的

为了找出导致错误的原因,我检查了~/.docker/config.json. 我的 config.json 是这样的。

0 投票
0 回答
174 浏览

docker - 如何在 gitlab 运行器上使用自定义图像?

我有一个.gitlab-ci.yml并且我希望从我的 ECR 中提取跑步者使用的图像。我认为这应该很容易,我让跑步者从 ECR 获取凭据,然后在其他工作之前运行的作业中提取图像:

但是,它会尝试在任何作业运行之前拉取 docker 映像,这意味着它在登录之前就失败了。有什么想法吗?

0 投票
1 回答
1829 浏览

amazon-web-services - 用于构建 Java 应用程序、Docker 映像并将其推送到 AWS ECR 的 Bitbucket 管道?

我正在为我的 Java 应用程序设置 Bitbucket 管道,我想要实现的是,每当我将某些内容与分支主服务器合并时,Bitbucket 都会触发管道,在第一步构建和测试我的应用程序,然后在第二步中构建 Docker 映像,然后将其推送到 ECR。问题是在第二步中不可能使用在第一步中创建的 JAR 文件,因为每一步都是在一个单独的、新鲜的 Docker 容器中进行的。任何想法如何解决它?

我目前的文件是:

1) Bitbucket-pipelines.yaml

2)Dockerfile:

我收到的错误是:

0 投票
1 回答
1727 浏览

docker - Docker 推送命令给出错误“标签不存在”

我正在尝试使用以下命令将在本地创建的 docker 映像推送到 Amazon ECR 存储库:-

docker push <<accountid>>.dkr.ecr.<<region>>.amazonaws.com/api:latest

给出以下错误:-

tag does not exist: <<accountid>>.dkr.ecr.<<region>>mazonaws.com/api:latest

0 投票
1 回答
391 浏览

amazon-web-services - 上传 druid 和 superset 镜像到 ECS

我已经为 DRUID 和 Superset 创建了一个 docker 映像,现在我想将这些映像推送到 ECR。并启动 ECS 来运行这些容器。我所做的是通过在我的 YML 文件上运行 docker-compose up 创建了图像。现在,当我键入时,docker image ls我可以看到其中运行了多个图像。

  1. 我创建了一个 aws 帐户并创建了一个存储库。他们提供了 push 命令,我将超集推入 ECR 以启动。(没有推动任何依赖)

  2. 我在 AWS 中创建了一个集群,如果提供了自定义端口 8088,则在一个配置步骤中。我不知道他们要求这些端口是什么以及为什么。

  3. 然后我使用默认配置创建了一个负载均衡器

  4. 一段时间后,我可以看到容器状态变为正在运行

  5. 我导航到我提到的使用端口 8088 的公共 ip,并且可以看到超集正在运行

现在我有两个问题

  1. 它总是在超集中显示登录错误

  2. 它会在一段时间后自动停止并在此之后重新启动,并且此循环继续。

怀疑

1. 在 ECS 中创建集群之前,我是否应该创建不同的 ECR 存储库并将所有依赖项推送到 ECR。

在此处输入图像描述

0 投票
0 回答
52 浏览

amazon-web-services - ECR ImagePullBackOff

我创建了一个可以工作的 docker 映像,我将它推送到 ECR 中,我试图拉它来测试它。我已经成功拉动它=>到目前为止没有错误。但是在应用(在 minikube 上)我的部署时,我得到了 ImagePullBackOff。这是我调用我的图像(我提取的)的部署文件的代码:

0 投票
0 回答
764 浏览

docker - 从 ECR 构建 docker 文件时“没有基本身份验证凭据”

我有以下 docker 文件,该文件是从 ECR 中的基本映像引用的。(以及文件中的很多行)

但是在构建图像时

我在第一行本身就遇到了错误:

那么,如何创建一个 docker 文件并从 ECR 构建一个映像。
aws ecr get-login --no-include-email --region eu-west-1我必须从中获取用户名和密码并在 dockerfile 和构建期间作为参数传递吗?最佳做法是什么?

有什么样本可以参考吗?

0 投票
2 回答
674 浏览

amazon-web-services - ECS Fargate 计划任务无法连接到 ECR

我收到以下错误,我在互联网上的其他任何地方都找不到(尽管有很多类似的错误!)。CannotPullContainerError: Error response from daemon: Get https://[clientid].dkr.ecr.eu-west-1.amazonaws.com/v2/: Unable to connect

我一直在查看以下故障排除参考:https ://aws.amazon.com/premiumsupport/knowledge-center/ecs-pull-container-api-error-ecr/

我很确定我已经完成了所有这些事情,并对它们进行了两次或三次检查——我为测试所做的其他事情:

  • 通过解除端点与相关路由表的关联,消除了端点出现问题的可能性。

  • 在私有子网指向的 NAT 网关所在的公有子网中创建一个 EC2 实例,在 Fargate 任务使用的私有子网中创建一个与 ecsTaskExecutionRole 具有相同权限策略并连接到私有子网中的 EC2 实例的 EC2 实例通过公共子网中的堡垒箱。我可以使用 ECR api,例如batch-get-image,还可以在使用 api 提供的凭据手动登录后从 ECR 中提取 Docker 映像。

  • 检查 ECR 存储库上没有策略。

从逻辑上讲,这会从故障排除列表中指出问题所在Your AWS Identity and Access Management (IAM) role doesn't have the right permissions to pull or push images,但我使用的ecsTaskExecutionRole专门具有这些权限的

我现在完全没有想法 - 想知道我做错了什么或者是否还有其他事情发生,特别是考虑到稍微不寻常的错误消息。有任何想法吗?