[英]how to access env variables from docker compose file
我在 docker compose 中有两个服务 1. 一个应用程序和 2. db 服务(可以是 Mysql 或 Postgres)。 根据在组合文件中为 db 服务设置的环境变量,我需要为 sqlalchemy 引擎创建 DATABASE_URI。 如何在应用程序 docker 容器中访问这些 ENV?
我正在尝试访问 docker-compose 文件而不是 Dockerfile 中的环境集。
下面是我的 Docker-compose 文件的外观
version: "3.7"
services:
myapp:
image: ${TAG:-myapp}
build:
context: .
ports:
- "5000:5000"
docker_postgres:
image: "postgres:latest"
environment:
- POSTGRES_PASSWORD=postgres
ports:
- "5432:5432"
如果要构建自己的 database_uri,则需要为 postgres 数据库设置环境变量。
environment:
POSTGRES_DB: dev
POSTGRES_USER: username
POSTGRES_PASSWORD: pw
@jonrsharpe 你的意思是说我可以做这样的事情?
services:
myapp:
image: ${TAG:-myapp}
build:
context: .
environment:
- DB_USER=postgres
- DB_PASSWORD=postgres
- DB_HOST=docker_postgres
ports:
- "5000:5000"
docker_postgres:
image: "postgres:latest"
environment:
- POSTGRES_PASSWORD=postgres
- POSTGRES_USER=postgres
ports:
- "5432:5432"```
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.