使用部署docker容器映像,但未创建 EC2 实例的情况下。出现下面错误提示。

“调用 RunTask 操作时发生客户端错误 (InvalidParameterException):在您的集群中未找到容器实例。”

经过以下的步骤:

1.将 Docker 映像从 Ubuntu 推送到我的 Amazon ECS 存储库。

2.注册ECS任务定义:

aws ecs register-task-definition --cli-input-json file://path/to/my-task.json
  • 1.

3.运行任务:

aws ecs run-task --task-definition my-task
  • 1.

然而,它失败了。

任务代码:

{
  "family": "my-task",
  "containerDefinitions": [
    {
        "environment": [],
        "name": "my-container",
        "image": "my-namespace/my-image",
        "cpu": 10,
        "memory": 500,
        "portMappings": [
            {
                "containerPort": 8080,
                "hostPort": 80
            }
        ],
        "entryPoint": [
            "java",
            "-jar",
            "my-jar.jar"
        ],
        "essential": true
    }
  ]
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.


在尝试过使用管理控制台来配置集群和服务,但还是出现了同样的错误。如何配置集群以拥有 ec2 实例,以及我需要使用哪种容器实例?在遇到这样的问题时应该按以下是一些冗长的程序操作:

1. 转到您的额EC2控制台,然后单击Launch Instance按钮。

2. 在 下Community AMIs,搜索ecs-optimized,然后选择最适合您项目需求的那个。任何都可以。单击下一步。

3. 当您进入配置实例详细信息时,单击create new IAM role link并创建一个名为的新角色ecsInstanceRole

4. 将AmazonEC2ContainerServiceforEC2Role策略附加到该角色。

5. 然后,完成配置您的 ECS 实例。
注意:如果您正在创建 Web 服务器,您将需要创建一个 securityGroup 以允许访问端口 80。

几分钟后,当实例初始化并运行时,可以刷新正在尝试添加实例的 ECS 实例选项卡。解决此类问题啦