将环境variables添加到ECS主机

我试图在托pipeECS容器的EC2实例中设置一个环境variables。 运行时,EC2实例上的docker客户端应该可以读取环境variables。 我知道可以像这样添加userData:

#!/bin/sh echo export env_var=1 >> /etc/environment 

但是由于某些原因,在实例化ECS任务时,docker客户端并没有拾取这个env_var。

任何想法我怎么可能去做这个? 提前致谢。

你只是添加环境variables? 然后尝试以下

  1. 在Dockerfile中添加variables

    ARG DEV

    ENV DEV = $ {DEV}

  2. 构buildDocker镜像时添加variables

    dockerbuild设。 -t projectname –build-arg DEV = False

您可以从任务定义中定义环境variables,使用Docker的--env选项将其传递到您的容器中。 高级容器定义参数 (向下滚动到“环境”)

 "environment" : [ { "name" : "string", "value" : "string" }, { "name" : "string", "value" : "string" } ] 

下面是一个快速示例,展示了它在完整任务定义中的外观:

 { "family": "example-task", "containerDefinitions": [ { "name": "sample-app", "image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/aws-nodejs-sample:v1", "memory": 200, "cpu": 10, "essential": true, "environment": [ { "name": "ENVIRONMENT", "value": "production" }, { "name": "API_HOST", "value": "https://example.com" } ], } ] }