AWS ECS 运行任务时出错:在集群中找不到容器实例

2023-11-22

我正在尝试部署一个docker容器镜像到AWS using ECS,但未创建 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 实例,以及我需要使用哪种容器实例?我认为整个过程就是从创建 EC2 实例开始!!


经过几个小时的调查后我发现了这一点。 Amazon,如果您正在倾听,您应该在创建集群或向集群添加实例时在管理控制台的某个位置声明这一点:

“在将 ECS 实例添加到集群之前,您必须首先转到 EC2 管理控制台并创建ecs-optimized具有 IAM 角色的实例,该角色具有AmazonEC2ContainerServiceforEC2Role附政策”

这是冗长的:

1. 前往您的EC2 仪表板,然后单击Launch Instance button.

2. 下Community AMIs, 搜索ecs-optimized,然后选择最适合您的项目需求的一项。任何都会起作用。点击下一步。

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

4. 附上AmazonEC2ContainerServiceforEC2Role发挥这一作用的政策。

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

几分钟后,当实例初始化并运行时,您可以刷新您也尝试添加实例的 ECS 实例选项卡。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AWS ECS 运行任务时出错:在集群中找不到容器实例 的相关文章

随机推荐

  • 我可以覆盖用 C 编写的 Ruby 方法吗?

    是否可以覆盖 Ruby 本身的方法 例如rb error frozen 用 C 语言编写 带有 Ruby 代码 背景 我想知道当修改冻结对象时 是否可以让 Ruby 仅记录警告 而不引发异常 这样 我可以记录各种状态修改 而不是在第一个发生
  • 从 GitHub 项目导出可用的 .jar 文件

    我对 java 和 eclipse 相当陌生 我想从这个 github 项目中获取 jar 文件 https github com nikkiii omegle api java 我已经尝试在 Eclipse 中这样做 但我无法将项目作为
  • docker 未考虑 docker-compose.yml 中指定的资源限制

    我正在尝试设置资源限制docker compose yml file 这里是 version 3 7 services postgres build docker postgres container name postgres ports
  • 在Python中替换unicode字符串中的非ascii字符

    如何在Python中替换unicode字符串中的非ascii字符 这是我针对给定输入观察的输出 音乐 gt 音乐 纸箱 gt 纸箱 卡诺 gt 卡诺 也许有一个字典 其中 是键 a 是值 如果您只想将重音字符降级为非重音字符 gt gt g
  • 在 Raku 中使用 Perl 5 模块 Data::Printer 的 `show_tied` 选项时,如何关闭它?

    我使用了带有 Perl 的 CPAN Perl 模块 Data Printer DP 效果很好 现在我想在 Raku 代码中使用它 When I use the from
  • Kivy:标签文本在 for 循环期间不会更新

    当我尝试在 for 循环期间更新标签文本时遇到问题 还有类似的条目 例如 运行代码时更新 kivy 小部件的属性 但它们似乎并不完全符合我的问题 或者我错过了重点 我运行以下代码 py from kivy app import App fr
  • C# 创建/修改/读取 .xlsx 文件

    我正在寻找一种在 C 中创建 修改 读取 xlsx 文件的方法 而无需安装 Excel 或在服务器上创建文件 然后再提供给用户下载 我找到了NPOIhttp npoi codeplex com 看起来不错 但支持 xls 而不是 xlsx
  • 32 位字的镜像位

    你会如何在 C 中做到这一点 例如 如果我们必须镜像 8 位 则 10110001 会变为 10001101 某些处理器上是否有任何指令可以简化此任务 它实际上被称为 位反转 通常在 FFT 加扰中完成 O log N 方式是 最多 32
  • perl6 可以在匹配中使用连接吗?

    是否可以使用 junction 来匹配 junction 中的任何值 我想匹配数组中的任何值 正确的做法是什么 lisprog perl6 To exit type exit or D gt my a a a b c gt any a an
  • 检查项目是否已在上下文菜单中[重复]

    这个问题在这里已经有答案了 不久前 我可以在 Google Chrome 扩展中保存上下文菜单中创建的项目的 ID 背景 js var myItem if myItem MyItem myItem chrome contextMenus c
  • 使用 CRON 作业访问 url?

    我有一个网络应用程序 必须执行重复的任务 发送消息和警报 我已经使用脚本页面在浏览器中加载时执行这些任务 即http example com tasks php我通过 iframe 将其包含在我的 Web 应用程序的每个页面中 现在我想改变
  • Android 请求多个权限

    我正在修改现有的面部跟踪器应用程序 Android 的面部识别示例项目 我在请求多个永久权限时遇到问题 下面的方法是现有方法的修改版本 成功创建了一个弹出窗口来请求相机权限 我正在尝试使用存储权限来复制此内容 但到目前为止我还没有成功 并且
  • 如何通过API获取维基百科文章的一小段文字和主图?

    我正在尝试创建一个简单的维基百科克隆 允许用户搜索某个主题 然后显示 10 个包含文章图像和一小段文本的结果 我已经能够将用户提供的搜索字段传递给我的 ajax 打电话没有问题 但现在我无法检索图像 我已经阅读了 StackOverflow
  • 将线程分配给特定的CPU核心

    AFAIK 在 Linux 中可以将线程分配给 CPU 核心 看this 但是 我的问题是我可以使用以下方法实现此功能吗boost如果可能的话 又是如何实现的呢 请注意 操作系统也不能决定哪个对我来说更好 而是假设我想在设计中控制这种行为
  • Java 通过谓词将流拆分为流的流

    我正在阅读数百个大型 6GB gzip 日志文件GZIPInputStream是我想解析的 假设每一项的格式如下 Start of log entry 1 some log details some log details some log
  • 在 BigQuery 中查询多个重复字段

    我有一个架构 其中包含多个未嵌套的重复字段 我正在尝试查询叉积 但出现错误 无法查询重复字段的叉积 如果我只查询 2 个重复字段 我可以将其中之一展平 然而 我有兴趣查询超过 2 个重复字段 并且我无法理解 FLATTEN 语法如何支持这一
  • 如何将 Android Studio 完全安装到非默认 (D:) 驱动器

    我将从高级 常识 问题开始 然后进入技术细节 高级问题 在 Windows 10 中运行 Android Studio 安装程序时 我告诉它安装到 D 驱动器 而不是默认的 C 驱动器 为什么它坚持将某些组件安装到 C 驱动器上 安装到非默
  • 在 Java Web 应用程序中加载外部库

    我的场景如下 我有一个部署到 servlet 容器的 WebApp war 此 WebApp war 在 WEB INF lib 中包含以下库 lib a jar lib b jar 我还有另一个库 例如 lib vendor jar 由于
  • 在 xcode 中仍然出现 文件未找到错误

    我是 PhoneGap 的新手 通过 Xcode 制作应用程序 但我发现了一个错误CDVViewController h 然而 该文件实际上存在于那里 我正在使用 Xcode 4 6 和 Cordova 2 2 0 伙计 这个问题有很多转移
  • AWS ECS 运行任务时出错:在集群中找不到容器实例

    我正在尝试部署一个docker容器镜像到AWS using ECS 但未创建 EC2 实例 我在互联网上搜索了有关为什么收到以下错误的解释 调用 RunTask 操作时发生客户端错误 InvalidParameterException 在集