搜索此内容时,它会产生如何使用 ECS 执行此操作。这需要将配置文件放在特定目录中或设置 env 变量,这在使用 Fargate 时都是不可能的,因为它是无服务器的。
我觉得好像我在这里遗漏了什么,有人有什么想法吗?
谢谢!
搜索此内容时,它会产生如何使用 ECS 执行此操作。这需要将配置文件放在特定目录中或设置 env 变量,这在使用 Fargate 时都是不可能的,因为它是无服务器的。
我觉得好像我在这里遗漏了什么,有人有什么想法吗?
谢谢!
更新截至 2018 年此答案不再有效;您现在可以使用私有注册表。见https://stackoverflow.com/a/52267257
- Fargate 启动类型仅支持 Amazon ECR 中的映像或 Docker Hub 中的公共存储库。
这似乎暗示它目前不受支持。
最简单的解决方法是将图像的副本上传到 ECR。
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
使用 PrivateLinks,您可以在没有公共 ip 的情况下注册和操作您的 EC2 实例和 Fargate 到 ECS 集群,还可以从 ECR 访问图像。
需要端点:
com.amazonaws.region.ecs-agent
com.amazonaws.region.ecs-telemetry
com.amazonaws.region.ecs
com.amazonaws.region.ecr.dkr
com.amazonaws.region.ecr.api
com.amazonaws.region.s3 (S3 gateway endpoint)
对于 ECS: 只需要 ECR 和 cloudwatch 端点(如下所述)
Fargate 启动类型:
com.amazonaws.region.ecr.dkr
com.amazonaws.region.s3 (S3 gateway endpoint)
此外,如果您使用 awslogs 驱动程序,您还可以添加 cloudwatch 端点。
com.amazonaws.region.logs.
您可以查看详细信息@https ://stackoverflow.com/a/54393281/10976464