[英]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.