使用airflow.providers.amazon.aws.operators.ecs传递环境变量,并在Docker容器中读取它们。
以下是示例代码:
from airflow.providers.amazon.aws.operators.ecs import ECSOperator
task_definition = {
"containerDefinitions": [
{
"name": "example-container",
"image": "example-image",
"environment": [
{
"name": "ENV_VAR_1",
"value": "value1"
},
{
"name": "ENV_VAR_2",
"value": "value2"
}
],
"essential": True
}
]
}
ECSOperator(
task_definition=task_definition,
task_definition_arn="example-task-definition-arn",
aws_conn_id="aws_default",
launch_type="FARGATE",
platform_version="LATEST",
region_name="us-east-1",
cluster="example-cluster",
network_configuration={
"awsvpcConfiguration": {
"subnets": ["example-subnet-1", "example-subnet-2"],
"securityGroups": ["example-security-group"],
"assignPublicIp": "ENABLED"
}
}
)