如何在docker-compose.yml的.env文件中使用环境变量?

时间:2018-07-25 20:33:29

标签: docker

我正在尝试在docker-compose.yml文件中使用环境变量。我有一个文件my-great-env.env

这是它们的外观:

docker-compose.yml

version: '3.4'

services:
    blahblah:
        images: greatimage
        volumes:
          - "${MY_PATH}:c:\\FinalFolder"

my-great-env.env

MY_PATH=C:\the\path\to\folder

当我尝试通过docker运行它时,我得到了

  

未设置MY_PATH变量。默认为空字符串。

如何使用.env的{​​{1}}文件中定义的环境变量?

1 个答案:

答案 0 :(得分:8)

您的问题有两个方面:

  1. 如果要使用docker-compose.yml文件中定义的环境变量,则必须按照以下说明将它们放入名为.env的文件中:https://docs.docker.com/compose/environment-variables/#the-env-file
  2. 您可以使用env_file配置选项来使用任何具有变量定义的文件,如下所述:https://docs.docker.com/compose/environment-variables/#the-env_file-configuration-option但是!它们将仅在容器中可见,而在docker-compose.yml文件中不可见。