为什么docker-compose env_file不起作用,但环境呢?

时间:2017-07-01 14:01:21

标签: node.js docker docker-compose

当我在docker-compose.yml中使用env_file时,它正确构建,但是当我尝试使用docker-compose时,我的节点应用程序无法在process.env对象中找到env_file变量。

这是我的docker-compose文件:

node1:
container_name: node01
env_file: ./env/node1.production.env
#environment:
  #- SOME_VALUE=9599
build:
  context: ./node1
  dockerfile: dockerfile
ports:
  - "3000:3000"  
networks:
  - dev_net

这是我的node1.production.env文件:

SOME_VALUE=9599

当我使用环境时,我的节点应用程序正常工作:

DOCKER版本: 17.03
DOCKER COMPOSE版本: 1.14
操作系统: CentOS

1 个答案:

答案 0 :(得分:1)

应该工作。我想你可能在node1.production.env文件中多次定义了变量。验证env文件是否正确。

从您提供的代码中,您使用的语法似乎没有错误,如果有,则在构建甚至可以启动之前就会报告它们。就我而言,我使用env文件如下:

env_file:
  - .env

其中.env命名文件存在于基目录中。