是否有语法在Docker env文件中引用来自主机的环境变量。
具体来说,我想做DOCKER_HOST=${HOSTNAME}
之类的事情,其中HOSTNAME
将成为托管泊坞窗图片的机器的环境。
上述内容并未进行任何替换尝试,而是以${HOSTNAME}
的形式传递到Docker镜像中。
答案 0 :(得分:0)
这通常不是在图像级别完成的,而是在运行时,在docker run:
上完成的请参阅" How to get the hostname of the docker host from inside a docker container on that host without env vars"
docker run .. -e HOST_HOSTNAME=$(hostname) ..
确实使用环境变量
你可以这样做没有环境变量,using -h
docker run -h=$(hostname)
但是当你的docker run是docker compose的一部分时,这不起作用。请参阅issue 3840。