问题标签 [ecs-taskdefinition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1254 浏览

terraform - Terraform - 使用 efs 文件系统创建弹性容器服务:检查您的文件系统 ID 是否正确

对于持久化容器数据,我想在我的 docker 容器中使用 EFS。ECS 任务的启动类型为 fargate。启动任务时出现以下错误:

ResourceInitializationError: failed to call EFS utils commands to setup EFS volumes: stderr: Failed to resolve "fs-xxxxxx.efs.eu-central-1.amazonaws.com" - 检查您的文件系统 ID 是否正确。

我的任务定义如下所示:

efs 系统位于 eu-central-1,定义如下:

我真的很想让这个工作和关于这个问题的在线资源非常模糊。

0 投票
1 回答
191 浏览

amazon-web-services - 如何在 AWS ECS 上访问任务的 apache 容器?

我正在建立一个基础设施来在 AWS 上部署我的应用程序。我正在使用 ECS 服务,因为我正在尝试部署基于 Docker 的应用程序。到目前为止,我已经创建了一个包含两个容器的任务定义,一个用于 apache,另一个用于 PHP。然后我启动了一个 ECS 集群,其中包含一个 EC2 实例和一个正在运行的任务。他们似乎都在运行。现在,我想弄清楚如何使用浏览器上的集群访问我的 EC2 实例的 apache。

这就是我创建 apache 容器的方式。

在此处输入图像描述

在此处输入图像描述

然后我创建了 php 容器,如下所示。

在此处输入图像描述

然后我启动了一个基于 EC2 的 ECS 集群,其中有一个实例。然后我在集群中运行一项任务。然后我尝试打开我的实例的公共 IP 地址。它只是不断加载加载和加载。我的配置有什么问题?如何在浏览器上访问它?

0 投票
0 回答
223 浏览

terraform - 即使 terraform 模板文件没有更改,Terraform 也显示为更改

我正在使用 terraform 版本 Terraform v0.11.13。我正在为 AWS 云使用 terraform,我有一些模板文件存储了我的应用程序的环境变量。我正在使用 AWS ECS 并创建了 ECS 任务定义和 ECS 服务,并将任务定义环境变量列表引用到模板文件(.tpl 文件)。

现在,即使我没有更改模板文件中的任何内容,Terraform 也会显示每次都销毁和重新创建 ECS 任务定义和 ECS 服务。

示例场景:

即使没有改变,为什么它试图从某个版本计划到计算 ??????

.tpl 文件中的缩进是否可能是此版本或 terraform 版本的问题,可能是什么问题以及此问题的可能解决方案是什么。

请帮忙。

提前致谢 :)

0 投票
2 回答
453 浏览

aws-fargate - 如何将 Linux 功能 SYS_NICE 和 DAC_READ_SEARCH 添加到 AWS Fargate 中的容器?

我正在尝试在 ECS Fargate 中设置任务定义以运行 Koha 容器,但 Fargate 不接受

--cap-add=SYS_NICE --cap-add=DAC_READ_SEARCH

(或除 之外的任何其他内核功能SYS_PTRACE)在任务定义 json 文件中。我尝试添加 "linuxParameters": {"capabilities": { "add": [ "SYS_NICE", "DAC_READ_SEARCH"],到任务定义 json 文件,但 Fargate 只是删除了代码。如果没有此选项,mpm_itk 模块将失败(并且我的容器会在日志中引发 500 错误并出现以下警告/错误

[mpm_itk:warn] [pid 17146] (itkmpm: pid=17146 uid=33, gid=33) itk_post_perdir_config(): setgid(1000): Operation not permitted

我该如何解决这个问题?有没有办法在容器启动后传递这些功能?任何帮助将不胜感激,谢谢!

0 投票
0 回答
230 浏览

ansible - Ansible community.aws.ecs_taskdefinition 因 `AttributeError: 'str' object has no attribute 'get' 而失败

我有以下带有默认配置的 Ansible 设置:

但是我设法在 Docker 中重现了 Python 3.6 和 2.7 的问题

我的 Ansible 角色如下:

..它取自“官方”模块的示例 - https://docs.ansible.com/ansible/latest/collections/community/aws/ecs_taskdefinition_module.html#examples

问题是执行ansible-playbook --connection=local ./ansible/prowler-fargate.yml

..失败并出现错误:An exception occurred during task execution. To see the full traceback, use -vvv. The error was: AttributeError: 'str' object has no attribute 'get'

-vvv 输出:

代码很好——它在 Jenkins 服务器上执行时功能齐全,只是不能让它在我的 mac 和任何 Docker 容器上工作

附近的模块使用以下代码可以正常工作:

任何想法为什么会发生这个问题以及如何摆脱它?

0 投票
1 回答
630 浏览

amazon-ecs - ECS任务定义命令中如何转义逗号

我有 docker 图像和命令:

它在 docker 和 docker-compose 中完美运行。但它在 AWS ECS 任务定义中不起作用,因为 ECS 需要用逗号分隔它,如下所示:

并且此命令将不起作用,因为-Q celery,reportsECS 始终以逗号分隔。我知道很多解决方法,但我找不到一个问题的答案 - 如何在任务定义命令中转义逗号分隔?

谢谢你的帮助。

0 投票
1 回答
2018 浏览

spring - 如何在 Spring 中从 AWS ECS 任务定义中读取环境变量?

在那里,我已经在 ECS 任务定义中设置了环境变量,如屏幕截图所示。我假设我可以简单地将其视为常规环境并在 Spring 中像这样阅读它:

但不知何故,变量 adPwd 返回 null。我必须以不同的方式阅读吗?

在此处输入图像描述

0 投票
1 回答
34 浏览

amazon-web-services - 我可以在重建 AWS ECS 容器时替换默认的“502 Bad Gateway”页面吗?

我有一个带有少量容器的 ECS 集群。我的构建管道设置为在将新更改推送到 ECR 时自动获取它们。这很好用,当新任务正在部署新容器时,我所有的负载均衡器(通常指向这些容器)都会出现 502 Bad Gateway 错误。我知道这在技术上是正确的,但是有没有办法可以拦截这个特定案例并显示“应用程序正在更新”,以便我可以区分由某些神秘错误引起的真正 502 错误和我在部署过程中故意造成的错误?

0 投票
1 回答
471 浏览

aws-cdk - 使用 python 定义 AWS cdk Fargate 任务 - 如何使用 add_container(secrets=[Mapping[str, Secret]])?

我正在用 python 编写 AWS Fargate 任务定义,如 https://docs.aws.amazon.com/cdk/api/latest/python/aws_cdk.aws_ecs/FargateTaskDefinition.html?highlight=fargatetaskdefinition

我想将数据库机密添加到 Fargate,但我对此感到困惑,secrets (Optional[Mapping[str, Secret]])因为不清楚如何将机密传递给此参数。我尝试使用字典,但得到了jsii.errors.JSIIError: Expected object reference.

有没有人用过这个,可以告诉我“映射”是如何工作的?

谢谢!

0 投票
1 回答
54 浏览

json - 使用 shell 脚本动态更新 ecs taskdef.json 中的键值

下面是我的 taskdef.json 并且想使用 shell 脚本动态更新几个值,我正在尝试使用 JQ 但似乎没有按预期工作。

我希望动态更新区域和 aws_account_id,而不是直接在 taskdef.json 中硬编码值。有没有办法更新这些值?