我正在尝试在托管 ECS 容器的 EC2 实例中设置环境变量。EC2 实例上的 docker 客户端在运行时应该可以读取环境变量。我知道可以像这样添加 userData:
#!/bin/sh
echo export env_var=1 >> /etc/environment
但是由于某种原因,在实例化 ECS 任务时,docker 客户端没有拾取这个 env_var。
知道我该怎么做吗?提前致谢。
我正在尝试在托管 ECS 容器的 EC2 实例中设置环境变量。EC2 实例上的 docker 客户端在运行时应该可以读取环境变量。我知道可以像这样添加 userData:
#!/bin/sh
echo export env_var=1 >> /etc/environment
但是由于某种原因,在实例化 ECS 任务时,docker 客户端没有拾取这个 env_var。
知道我该怎么做吗?提前致谢。
您只是添加环境变量吗?然后尝试以下
在 Dockerfile 中添加变量
ARG 开发
环境开发=${开发}
构建 docker 镜像时添加变量
码头工人建造。-t 项目名称 --build-arg DEV=False
您可以在任务定义中定义环境变量,这些环境变量将使用 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"
}
],
}
]
}