docker-compose不能用flask来设置环境variables

运行瓶容器,当我尝试读取环境variables,它们不是由docker组成。 我正在使用docker-compose文件版本2

compose file: services: test build: ./test image: test:1.0 container_name: test_flask ports: - "80:80" env_file: .env environment: - COUCHDB=http://192.168.99.100:5984 depends_on: - couchdb 

我已经尝试env_file和环境指令? 我也试图把值放在双引号,单引号,没有引号,没有工作。 .env文件包含:

  COUCHDB="http://192.168.99.100:5984", also tried without quotes 

然后我从Python代码读取这样的variables:

 COUCH_SERVER = os.environ["COUCHDB"] 

我也试过os.environ.get('COUCHDB')

没有工作。

服务器从Dockerfile启动,如下所示:

CMD服务apache2重启

我使用以下命令启动容器:

docker工人组成testing

我使用Docker for Windows工具箱版本:

 Client: Version: 1.13.1 API version: 1.26 Go version: go1.7.5 Git commit: 092cba3 Built: Wed Feb 8 08:47:51 2017 OS/Arch: windows/amd64 Server: Version: 17.04.0-ce API version: 1.28 (minimum version 1.12) Go version: go1.7.5 Git commit: 4845c56 Built: Wed Apr 5 18:45:47 2017 OS/Arch: linux/amd64 Experimental: false 

感谢您的帮助

我给你留下了一个如何从应用程序获取环境variables的例子。

泊坞窗,compose.yml

 version: '2' services: app: image: python:2.7 environment: - BAR=FOO volumes: - ./app.py:/app.py command: python app.py 

app.py

 import os print(os.environ["BAR"])