【发布时间】:2021-06-28 23:29:02
【问题描述】:
您好,我不知道这是否可行,但我在 aws 中有一个 docker 容器
[ec2-user@ip-10-200-40-182 ~]$ docker ps
CONTAINER ID IMAGE
74566049de08 xxxxxx.xxxxx.io/customers/xxxxxxx/lin/ema:5.0.6
我想获取该容器 ID 并将其放入该 docker 容器内的环境变量中
这需要是动态的,所以每次我反弹 ecs 服务时,环境变量应该会自动更改。
我尝试在 dockerfile 中这样做
来自 xxxxxxxxxxx.xxxx.ecr.eu-west-1.amazonaws.com/xxxxxxxxx:xxxxxxx
RUN uname -n > /test/tmp.log && \
export test_JMX_MANAGEMENTNODEHOSTNAME=$(cat /test/tmp.log)
但每次我进入容器并回显 $test_JMX_MANAGEMENTNODEHOSTNAME 时,我都会得到 $(cat /test/tmp.log) 而不是容器 id。我对 docker 很陌生,所以非常感谢您的帮助!
【问题讨论】:
-
好问题:b。容器 id 是在 docker run 之后创建的……你需要它的容器内的 id 吗?我有一个想法,但在重新启动该容器后会起作用。
-
嘿!是的,我需要容器 id 作为其容器内的变量。如果您有任何想法,请分享并进行测试:)
标签: amazon-web-services docker environment-variables dockerfile amazon-ecs