在
env_file选择启用将只在泊坞窗容器本身设置环境变量。不在撰写“ build”期间使用的主机上。
要将端口定义为env var,应使用此处
.env描述的文件
在您的情况下,创建一个
.env包含以下内容的文件:
PORT=5000
和
docker-compose.yml:
version: '3'services: flask: build: context: ./flask dockerfile: Dockerfile_flask ports: #- "5000:5000" - "${PORT}:${PORT}" # I want to set port defined in the env file volumes: - ./logs:/app/flask/log restart: always如果要使用env_file将环境变量添加到容器中,则可以再次添加它。
为了使这个例子更加清楚:Postgres从compose开始。中的环境变量在
my-env-file容器内部是已知的,
.env在此
docker-compose up过程中使用env var内部。
具有以下内容的
.env文件:
PORT=5432
一个
my-env-file有:
POSTGRES_USER=devPOSTGRES_PASSWORD=secretPOSTGRES_DB=db
和
docker-compose.yml:
version: ‘3.3’services: postgres: image: postgres:9.6 container_name: postgres env_file: - my-env-file ports: - ${PORT}:${PORT}


