我想用.env-file
来描述我的变量:
URL: $HOST
PORT: $PORT
MAIL = “test@test.be”
PASS = “test123"
我想在容器中使用该文件:
docker run --env-file myfile
但我想在我的文件中替换$ HOST和$ PORT 我可以这样做吗?
docker run --env-file myfile -e PORT="8080" -e "HOST=ec2-xxx"
答案 0 :(得分:1)
这已经得到支持,只需要确保你的ENV文件格式正确:
$ cat myfile
URL= $HOST
PORT= $PORT
MAIL= “test@test.be”
PASS= “test123
一旦您的env文件格式正确,您可以使用docker run命令,如下所示:
$ docker run --env-file=myfile -e HOST=123.22 -e PORT=234 busybox env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=0d543af16a70
URL= $HOST
PORT=234
MAIL= “test@test.be”
PASS= “test123
HOST=123.22
HOME=/root
请注意,在上面的docker run命令中,“busybox”是一个 容器和
env
是在运行时执行的命令 以上命令。在您的情况下,您可以更改容器名称,并且 确保env变量已正确发送。