在 ECS Fargate 上获取 CannotPullContainerError
Posted
技术标签:
【中文标题】在 ECS Fargate 上获取 CannotPullContainerError【英文标题】:Getting CannotPullContainerError on ECS Fargate 【发布时间】:2021-07-04 00:10:57 【问题描述】:我正在尝试在 ECS Fargate 上运行我的微服务。我有自托管的私有 Docker 注册表。我尝试从 ECS Fargate 服务所在子网中的 EC2 服务器内部拉取相同的 Docker 映像,它能够拉取 Docker 映像。
但是,使用 ECS Fargate,我收到以下错误:
CannotPullContainerError:检查图像已重试 5 次: 未能解决参考 “xxxxxxxxxxxxxx/xxxxxxxxxxx:最新”: 请求失败:头部 https://xxxxxxxxxxxxxx/v2/xxxxxxxxxxxxxx/mani..
如果是网络错误,那么也应该无法从同一子网中的 EC2 服务器访问它。 Fargate 本身似乎有问题。
【问题讨论】:
如何保证fargate对ECR的访问? fargate 任务是公开的吗?是否有公共 IP,或者您正在使用 NAT 或 VPC 接口端点? 嗨@Marcin,图像不在 ECR 中。它位于我们的私有注册表中,该注册表也托管在同一 VPC 内的 EC2 上。 我也有同样的问题 【参考方案1】:您想将图像推送到 aws ecr 中,因为 aws ecs fargate 将从 aws ecr 中提取图像。
【讨论】:
以上是关于在 ECS Fargate 上获取 CannotPullContainerError的主要内容,如果未能解决你的问题,请参考以下文章