как получить доступ к переменным env из docker compose file - PullRequest
0 голосов
/ 12 марта 2019

У меня есть две службы в Docker, составляющие 1. приложение и 2. службу db (может быть Mysql или Postgres).В зависимости от переменных окружения, установленных в файле compose для служб db, мне нужно создать DATABASE_URI для движка sqlalchemy.Как мне получить доступ к этим ENV в контейнере Docker приложения?

Я пытаюсь получить доступ к Env Set внутри файла 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"

Ответы [ 2 ]

0 голосов
/ 12 марта 2019

@ 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"```
0 голосов
/ 12 марта 2019

Вам необходимо установить переменные окружения для вашей базы данных postgres, если вы хотите создать свою собственную database_uri.

environment:
POSTGRES_DB: dev
POSTGRES_USER: username
POSTGRES_PASSWORD: pw
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...