【发布时间】:2017-11-03 10:23:34
【问题描述】:
我想为正在运行的 aws 批处理作业定义环境变量。不同的 ENV 变量会触发代码的某些部分。当我在批处理控制台中添加它们时,它们不会传递给作业定义容器属性。我以与将变量传递到 Dockerfile 中的相同形式传递变量:NAME=VALUE。下面是我在创建新定义和对现有定义进行修订后得到的输出。
"containerProperties": {
"image": "docker-image",
"vcpus": 2,
"memory": 2000,
"command": [],
"volumes": [],
"environment": [],
"mountPoints": [],
"ulimits": []
}
是否有用于此的特殊语法?
【问题讨论】:
-
请更详细地演示您是如何尝试的,显示不起作用的代码就可以了。显示所需的输出(即您希望它的外观,模仿环境变量的扩展。
-
在 aws Batch 作业定义控制台的 Environment Variables 部分下,我将 NAME 放入 Key 输入框中,将 VALUE 放入 value 输入框中。我点击保存。并且作业定义的 json 不包含变量。
-
找到了一个解决方案,我运行了一个调用“register_job_definition”端点的 lambda 函数,并将环境变量包含在有效负载中。 'containerProperties = { "image": "test-image", 'vcpus': 1, 'memory': 10, "environment": [{ "name": "please","value": "work"}] } ' 我检查了我的批次定义,新定义包含变量。不知道为什么它不能从控制台工作。
标签: amazon-web-services aws-batch