在env_file
选择启用将只在泊坞窗容器本身设置环境变量。不在撰写“ build”期间使用的主机上。
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内部。
PORT=5432
一个my-env-file
有:
POSTGRES_USER=dev
POSTGRES_PASSWORD=secret
POSTGRES_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}