将环境dockervariables导出到文件
我有一个非常简单的docker文件:
FROM tomcat:7.0 RUN echo $HOST_IP > /opt/serverIP
当我用跟随命令运行我的镜像(my-server)时,文件/opt/serverIP
存在并且是空的:
docker run -e HOST_IP='172.16.1.1' -t my-server cat /opt/serverIP
如何将我的环境价值写入临时文件?
我的docker版本:docker版本1.12.1,build立23cf638
这是我的机器信息:
内核版本:4.4.0-36-通用 操作系统:Ubuntu 16.04 LTS OSType:linux 架构:x86_64 CPU:4 总内存:7.703 GiB
我相信你会把构build时variables和运行时variables混淆在一起。 “RUN”命令基本上是在编译时执行的。 您的“HOST_IP”值是在运行时提供的。
但是,“CMD”指令在运行时执行。 要做大约你正在做的事,定义一个“CMD”,把$ HOST_IP写入文件。 使用“docker run”运行映像,然后使用“docker exec”来validation文件的内容。