docker-compose备用文件不会在该目录中拾取.env

时间:2018-10-21 10:43:24

标签: docker docker-compose

我正在使用github中预先创建的docker-compose.yml使用ELK(弹性搜索,Logstach和Kibana)堆栈之一。当我进入克隆目录并执行docker-compose up时,一切正常。它从与 docker-compose.yml 相同目录中的 .env 文件中提取 ELK_VERSION = 6.4.0

但是,例如,如果我转到一个目录并指定具有完整路径的撰写文件,它将不会获取 .env 文件。 docker-compose -f "C:\progs\docker\docker-elk\docker-compose.yml" up。它只会抱怨未设置 ELK_VERSION

我也尝试设置项目目录,但是没有运气。 docker-compose -f "C:\progs\docker\docker-elk\docker-compose.yml" --project-directory "C:\progs\docker\docker-elk" up

除了做一个

,我一无所知
$ cd <elk compose dir>
$ docker-compose up
$ cd -

但是,这对于我的小型OSS库FluentDocker是不安全的。我希望用户始终可以完全控制CurrentDirectory

版本: docker-compose版本1.22.0,内部版本为f46880fe

干杯,
 马里奥

1 个答案:

答案 0 :(得分:2)

Official doc says

  

Compose支持在以下环境中声明默认环境变量:   名为.env的环境文件放置在   docker-compose 命令已执行(当前工作目录)。

如果将.env文件移动到执行docker-compose的文件夹中,则它应该可以工作。