[英]env_file is ignored in docker-compose and cause “The … variable is not set” warning
我只想使用從docker-compose文件中的文件加載的環境變量。 但是在運行容器之后,我只有
警告:未設置TESTVAR變量。 默認為空字符串。
只找到了這個主題 ,但是我正在使用更高版本的17.05.0-ce
,如17.05.0-ce
compose: 1.14.0
, 17.05.0-ce
: 17.05.0-ce
。 並且我將編碼更改為ISO 8859-1
,因為我發現了一個github問題,其中檢測到了奇怪的編碼行為。 兩者都不起作用。
我的docker-compose文件
version: '2'
services:
mysql:
container_name: test_${TESTVAR}
build: mysql
mem_limit: 1G
env_file:
- credentials.env
TESTVAR=test123
僅包含TESTVAR=test123
。 首先,我運行docker-compose up mysql
,我也嘗試直接在撰寫文件中指定環境變量,如下所示:
environment:
- TESTVAR=1234
也不行。
如果要在docker-compose.yml中使用變量,則可以使用.env文件,docker docs
$ cat .env
TAG=v1.5
TESTVAR=123
$ cat docker-compose.yml
version: '3'
services:
web:
image: "webapp:${TAG}"
environment: ["TESTVAR=${TESTVAR}"]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.