【问题标题】:AWS Fargate - pulling from a private repoAWS Fargate - 从私有存储库中提取
【发布时间】:2018-05-20 16:03:49
【问题描述】:

当搜索这个时,它会产生to do this using ECS。这需要将配置文件放在特定目录中或设置 env 变量,这在使用 Fargate 时都是不可能的,因为它是无服务器的。

我觉得好像我在这里遗漏了什么,有人有什么想法吗?

谢谢!

【问题讨论】:

    标签: amazon-web-services aws-fargate aws-ecs


    【解决方案1】:

    更新截至 2018 年此答案不再有效;您现在可以使用私有注册表。见https://stackoverflow.com/a/52267257


    我发现 http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definitions

    • Fargate 启动类型仅支持 Amazon ECR 中的映像或 Docker Hub 中的公共存储库。

    这似乎暗示它目前不受支持。

    最简单的解决方法是将图像的副本上传到 ECR。

    【讨论】:

    【解决方案2】:

    AWS 刚刚为 Fargate 发布了该功能:您可以将您选择的任何私有注册表用于 Fargate 或 EC2 启动类型。您将首先将您的私有注册表凭证存储在 AWS Secrets Manager 中。然后,您将在注册任务定义时提供 secret-manager ARN 或密钥名称作为容器级别参数。此功能需要 Fargate 平台版本 1.2.0。

    https://docs.aws.amazon.com/AmazonECS/latest/developerguide/private-auth.html

    【讨论】:

      【解决方案3】:

      PrivateLinks is now available, for both ECS & ECR

      使用 PrivateLinks,您可以在没有公共 ip 的情况下注册和操作您的 EC2 实例和 Fargate 到 ECS 集群,还可以从 ECR 访问图像。

      需要端点:

      EC2 启动类型:

      For ECS:

      com.amazonaws.region.ecs-agent
      com.amazonaws.region.ecs-telemetry
      com.amazonaws.region.ecs
      

      For ECR:

      com.amazonaws.region.ecr.dkr
      com.amazonaws.region.ecr.api
      com.amazonaws.region.s3 (S3 gateway endpoint)
      

      Fargate 启动类型:

      For ECS: 只需要 ECR 和 cloudwatch 端点(如下所述)

      For ECR:

      Fargate 启动类型:

      com.amazonaws.region.ecr.dkr 
      com.amazonaws.region.s3 (S3 gateway endpoint)
      

      CloudWatch

      此外,如果您使用 awslogs 驱动程序,您还需要添加 cloudwatch 端点。 com.amazonaws.region.logs.

      您可以查看详情@https://stackoverflow.com/a/54393281/10976464

      【讨论】:

        猜你喜欢
        • 2021-12-10
        • 2019-03-08
        • 2022-07-05
        • 2019-03-25
        • 1970-01-01
        • 2020-06-08
        • 1970-01-01
        • 1970-01-01
        • 2017-07-05
        相关资源
        最近更新 更多