使用部署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
3.运行任务:
aws ecs run-task --task-definition my-task
然而,它失败了。
任务代码:
{
"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
}
]
}
在尝试过使用管理控制台来配置集群和服务,但还是出现了同样的错误。如何配置集群以拥有 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 实例选项卡。解决此类问题啦