【发布时间】:2018-12-10 09:46:41
【问题描述】:
我的 docker setup 在奇怪的情况下运行
目录结构
SweetVPN/
.env
docker-compose.yml
.env
USER=myuser
PASS=mypass
docker-compose.yml
environment:
- USER=${USER}
- PASS=${PASS}
当我运行容器时,它说用户名和密码不正确,显然是用户名或密码错误。
当我检查时
❯ docker exec SweetVPN env
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=b6dc9052d7d9
USER=rahul
PASS=mypass
问题:
user=rahul
我的主机用户是默认从 docker 获取的,有没有办法覆盖 docker-compose 中的主机变量?
我尝试了主机unset $USER,但没有成功。
【问题讨论】:
-
$USER是一个特殊的环境变量,我不会将它用于应用程序级配置。这就像使用$PATH来设置部分URL;按照惯例,它意味着完全不同的东西。
标签: docker docker-compose environment-variables overriding