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"])