当前位置: 首页 > 知识库问答 >
问题:

ECS:容器的TaskExecutionRole

裴昕
2023-03-14

我想通过CloudFormation创建一个Fargate类型的ECS任务,但在上载此清单时:

Resources:
  UITaskDefinition:
    Type: AWS::ECS::TaskDefinition
    Properties:
      Family: "ui-task"
      NetworkMode: "awsvpc"
      Cpu: "256"
      Memory: "0.5GB"
      RequiresCompatibilities: 
        - "FARGATE"
      ContainerDefinitions:
        -
          Name: !Ref UIContainerName
          Image: "298984380.dkr.ecr.eu-west-1.amazonaws.com/myregistry/ui:test"
          Essential: "true"
          PortMappings:
          -
            ContainerPort: 80
            HostPort: 80

我得到以下错误

Fargate要求任务定义具有执行角色ARN以支持ECR映像

但是,当我尝试通过AWS控制台创建角色时,会提示我使用以下服务列表来分配角色

我应该选择哪种服务?弹性集装箱服务?

我认为这个角色是特定于容器的!

共有1个答案

耿敏达
2023-03-14

是的,您可以为受信任的实体选择弹性容器服务。有关执行角色的详细说明和信息,请参阅ECS文档。

 类似资料:
  • 我正在尝试使用AWS ECS在docker容器中运行boto3 python脚本。我的脚本需要访问SQS(获取 为了让docker容器在我的本地机器上运行,我能够使用以下docker run命令将我的aws凭据传递到docker容器中。 <代码>docker run-v ~/。aws:/root/。aws 最近ECS宣布: 亚马逊ECS现在支持任务的IAM角色。为任务指定IAM角色时,其容器可以使

  • 我正在尝试使用ecs-cli命令行在AWS上获得一个工作的Docker环境。 我有一个使用Dockerfiles、docker-compose.yml、一个.env文件和一个entrypoint.sh脚本的工作本地Docker环境。容器是一个运行PHP和一系列扩展的apache webserver以及一个MySQL DB。 骨架文件结构是这样的: ./docker/webserver/entryp

  • 如果我们在不同的服务器上使用rabbitmq,它如何与不同的微服务进行对话?我在taskdefinition中使用网络模式作为“默认网络”,我应该将其更改为AWSVPC吗?

  • 我正在尝试设置aws ecs fargate部署配置。我能够在没有容器健康检查的情况下运行容器。但是,我也想运行容器健康检查。我尝试了所有可能的场景来实现这一点。但是,没有运气。 我尝试使用下面的aws recommeded命令从列出的URL验证容器健康检查。 https://docs.aws.amazon.com/amazonecs/latest/developerguide/task_defi

  • 我使用docker-composing创建了一个Docker容器。在我的本地环境中,我能够毫无问题地启动我的应用程序。 现在,我想将所有docker容器部署到AWS EC2(ECS)。在阅读了ECS文档后,我发现我们可以使用相同的docker compose在ECS中使用ECS-CLI进行部署。但ECS-CLI目前不适用于windows实例。因此,现在我不知道如何使用docker compose使

  • 但它有说明: 此操作仅由Amazon ECS代理使用,不打算在代理之外使用。 看起来不像是有效的解决方案。 所以我: > 通过名为“test-cluster”的CreateCluster方法创建新的集群。 通过RegisterTaskDefinition创建新任务 创建了新的EC2实例,该实例具有ECS优化的AMI类型的ecsInstanceRole角色,这对我所在的区域是正确的。那里是问题开始的