问题标签 [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 回答
282 浏览

amazon-cloudformation - 避免用 CloudFormation 替换 TaskDefinition

我正在自动化需要通过 cloudformation 创建堆栈的 PR 流程。问题在于,根据定义https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ecs-taskdefinition.html,旧的 TaskDefinition 修订版被删除,以便为新的/更新的 TaskDefinition 腾出位置。有什么办法可以避免更换而只进行更新?

0 投票
2 回答
1919 浏览

amazon-web-services - AWS Elastic Beanstalk EFS 挂载错误:未知文件系统类型“efs”

我正在尝试使用带有 Dockerrun.aws.json 的任务定义将我的 EFS 挂载到多 docker Elastic Beanstalk 环境。此外,我已将 EFS 的安全组配置为接受来自 EC2(EB 环境)安全组的 NFS 流量。

但是,我面临以下错误:

ECS 任务因以下原因停止:来自守护进程的错误响应:create ecs-awseb-SeyahatciBlog-env-k3k5grsrma-2-wordpress-88eff0a5fc88f9ae7500:VolumeDriver.Create:安装卷失败:安装:未知文件系统类型“efs”。

我正在使用 AWS 管理控制台上传这个 Dockerrun.aws.json 文件:

AWS 配置截图:

  1. EC2 安全组(由 EB 自动创建)
  2. EFS 安全组
  3. EFS 网络
0 投票
0 回答
21 浏览

api - Ecs 服务未接收到 bitbucket 存储库标记版本更改

场景:API 更改被推送到 bitbucket 并标记一个版本。相同的版本包含在 Ecs 服务或具有相同 bitbucket url 的 docker 映像构建中。但是当我们在 ec2 上访问 API 端点时看不到更改,它抛出 400 bad request 错误,API 代码中已修复,并且 bitbucket commit 的当前标记版本也具有相同的代码修复。Ecs 服务/任务定义日志显示包含在 bitbucket 的先前提交版本中的旧查询,因此尽管 Ecs 服务显示当前标记版本,但它正在拾取旧的。任何人都可以提出解决方案或提供意见。谢谢,

0 投票
1 回答
7273 浏览

amazon-cloudformation - 属性验证失败,消息无关密钥是不允许的

我收到以下错误

资源 mytaskdefinition 的属性验证失败,消息为:#/ContainerDefinitions/0: extraneous key [linuxParameters] is not allowed

根据https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_ContainerDefinition.html linuxParameters是一个有效的密钥。

正如错误所暗示的,我的任务定义嵌套linuxParameters在 ContainerDefinitions 下。

0 投票
0 回答
148 浏览

node.js - AWS SDK在容器覆盖命令上运行fargate抛出错误

我正在使用 lambda 和 fargate AWS 服务开发应用程序。在 NodeJS 中开发基础应用程序并创建 docker 映像并推送到 AWS ECR 以创建 ECS 任务。

在这里,fargate 任务将使用 AWS SDK API runtask 使用 lambda 函数触发。这个 runtask API 有不同的参数被传递来运行 fargate 任务。其中一个参数是容器 Overriders: 命令。使用此命令,我正在尝试调用在任务容器中运行的节点应用程序。

Node 应用程序只能使用命令行调用(例如,node app.js bulk-process [..args..])。因此,当容器启动并执行此给定命令时,应用程序将抛出如下错误。

我相信错误是说给定路径中缺少节点模块(包)但是当在 EC2 服务器上单独运行 docker 映像以验证 Dockerfile 执行的命令时,所有应用程序文件和 npm 包都已正确安装,甚至应用程序正在执行在对 docker 图像执行 sh 时正确。

请帮忙,因为我现在被这个问题困扰了很长时间,而且我是 AWS ECS 和 docker 服务的新手。

0 投票
3 回答
602 浏览

amazon-web-services - AWS ECS 任务定义更新

我正在 ECS 中设置新服务并多次更新我的任务定义。当我这样做时,我需要编辑相应的服务并将版本更新到最新。

有没有办法在更新时使用其对应任务定义的最新版本自动更新 AWS 服务?

0 投票
1 回答
135 浏览

amazon-cloudformation - CloudFormation TaskDefinition 具有两个基于条件的不同入口点

我必须根据条件添加任务定义条目。下面是我创建的模板。

我越来越

模板错误:每个 Fn::Split 对象都需要两个参数,(1) 字符串分隔符和 (2) 要拆分的字符串或返回要拆分的字符串的函数。

0 投票
2 回答
888 浏览

amazon-web-services - 使用 CloudFormation 在 ECS 服务上定义多个任务

嗨,我是 CloudFormation AWS 的新手,我现在正在使用具有 1 个任务的 ECS 服务,但我想使用 CloudFormation 完成更多任务。然而,在 AWS ECS 服务的属性中,有一个称为任务定义,并且只允许放置 1 个任务。如何配置以使用更多任务。我正在同一个地区做这个项目。谢谢

任务定义属性

0 投票
0 回答
119 浏览

amazon-web-services - AWS ECS 任务定义中环境变量的端口映射

有没有办法从 AWS ECS 任务定义中的环境变量指定容器端口?

这是 Github Actions 使用的我的 task-definition.json

0 投票
0 回答
53 浏览

docker-compose - AWS Elastic Beanstalk 在环境 docker-compose.yml 中找不到 ecs 任务定义(或空定义文件)

所以这是我的担忧,我正在尝试使用 docker-compose.yml 在 aws elasticbeanstalk 上部署一个小型多容器应用程序,但在部署过程中出现错误:在环境中找不到 ecs 任务定义(或空定义文件)

这是我的 docker-compose.yml :

我使用 ebcli 和 aws 控制台部署它,但它是相同的错误。一个主意?