2016-08-22 169 views
0

我有一個看起來像這種兩搬運工,撰寫配置yamls:泊塢窗撰寫顯然忽略COMPOSE_FILE

泊塢窗,compose.yml:

version: '2' 
services: 
    web: &web 
    build: . 
    environment: 
    FOO: bar 

泊塢窗,compose.development.override.yml:

version: '2' 
services: 
    web: &web 
    build: . 
    environment: 
    FOO: biz 

當我看看的$FOO容器內的值,我沒有看到的價值我預計:

bdares$ COMPOSE_FILE=./docker-compose.yml:./docker-compose.development.override.yml 
bdares$ docker-compose run --rm web bash 
docker$ echo $FOO 
bar 

當我明確設置撰寫的文件,我看到了我所期望的價值:

​​

這表明,我認爲,根據heredocker-compose不尊重COMPOSE_FILE環境變量。

我會做什麼錯?

版本信息:

  • 泊塢窗,撰寫版本1.8.0
  • 泊塢版本1.11.0
+0

你使用bash shell嗎?根據您使用的shell,您可能會嘗試將環境變量換成雙引號FOO =「bar:baz」。如果你從外部docker回顯env變量,它是否正確返回? – TopperH

+0

您可能需要導出COMPOSE_FILE才能使其工作,或將命令移動到您設置值的同一行。 – dnephin

回答

0

用途:

export COMPOSE_FILE=./docker-compose.yml:./docker-compose.development.override.yml 
docker-compose run --rm web bash 

COMPOSE_FILE=./docker-compose.yml:./docker-compose.development.override.yml docker-compose run --rm web bash