如何将环境变量传递给 aws 批处理作业定义
how to pass environment variables to an aws batch job definition
我想为我 运行 的 aws 批处理作业定义环境变量。不同的 ENV 变量会触发代码的某些部分。当我在 Batch 控制台中添加它们时,它们不会传递给作业定义容器属性。我以与将它们传递到我的 Dockerfile 中相同的形式传递变量:NAME=VALUE。下面是我在创建新定义和创建对现有定义的修订后得到的输出。
"containerProperties": {
"image": "docker-image",
"vcpus": 2,
"memory": 2000,
"command": [],
"volumes": [],
"environment": [],
"mountPoints": [],
"ulimits": []
}
是否有用于此的特殊语法?
您需要一个 lambda 函数来启动作业。 Python 代码如下:
import boto3
client = boto3.client('batch')
def lambda_handler(event, context):
response = client.submit_job(
jobName='some-job',
jobQueue='some-Queue',
jobDefinition='some-job-definition:1') # 1 is a version
环境变量将从环境
添加到client = boto3.client('batch')
中
我想为我 运行 的 aws 批处理作业定义环境变量。不同的 ENV 变量会触发代码的某些部分。当我在 Batch 控制台中添加它们时,它们不会传递给作业定义容器属性。我以与将它们传递到我的 Dockerfile 中相同的形式传递变量:NAME=VALUE。下面是我在创建新定义和创建对现有定义的修订后得到的输出。
"containerProperties": {
"image": "docker-image",
"vcpus": 2,
"memory": 2000,
"command": [],
"volumes": [],
"environment": [],
"mountPoints": [],
"ulimits": []
}
是否有用于此的特殊语法?
您需要一个 lambda 函数来启动作业。 Python 代码如下:
import boto3
client = boto3.client('batch')
def lambda_handler(event, context):
response = client.submit_job(
jobName='some-job',
jobQueue='some-Queue',
jobDefinition='some-job-definition:1') # 1 is a version
环境变量将从环境
添加到client = boto3.client('batch')
中