gpt4 book ai didi

amazon-ecs - 在 ECS Fargate 中从 Dockerhub 拉取公共(public)镜像

转载 作者:行者123 更新时间:2023-12-03 15:56:23 27 4
gpt4 key购买 nike

当我在我的 ECS Fargate 集群上配置我的 taskdefintion 以提取 nginx:latest 时,它失败了

STOPPED (CannotPullContainerError: Error response from daemon)

我不明白要在任务定义字段“图像”中添加什么。

它说有“repository-url/image:tag”,但如果我想从 dockerhub 中提取公共(public) nginx 镜像,显然它不是“nginx:latest”。 dockerhub 的 repository-url 是什么?

最佳答案

在 ECS FARGATE/EC2 中,当我们对镜像进行 sepcify 时,我们可以直接对任何可以通过 docker 命令拉取的镜像名称进行 sepcify。

例如,如果我们能够使用命令 docker pull nginx 拉取最新的 nginx 镜像如果我们不指定任何标签,那么它将提取最新图像。这在 ECS 中是一样的,所以我们可以指定 nginx 或 nginx:latest 两者都可以。这意味着您提供的图像名称是正确的。

我们看到此错误的原因与镜像无关,但可能与在 FARGATE 中运行的容器无法拉取镜像的网络有关。

我们必须记住,FARGATE 始终使用 AWS VPC 网络模式,这意味着有两种方法可以在 FARGATE 中运行任务:

  • 如果我们尝试在公共(public)子网中运行任务,则必须启用自动分配公共(public) IP,并且我们必须确保公共(public)子网路由表具有 IGW 或任何其他网关,这将提供适当的互联网连接,这将允许容器拉来自公共(public) docker repo 的图像。
  • 如果我们尝试在私有(private)子网中运行任务,则必须禁用自动分配公共(public) IP,并且我们必须确保私有(private)子网路由表具有 NAT 网关,这将允许容器从公共(public) docker repo 中提取图像。

  • [1] https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-configure-network.html

    关于amazon-ecs - 在 ECS Fargate 中从 Dockerhub 拉取公共(public)镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56037131/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com