Извлечение переменных из .env в docker-compose.yml
docker-compose.yml - имеет следующий вид:
services:
postgresdb:
build:
context: ./docker/postgres
dockerfile: Dockerfile
env_file:
- ./docker/postgres/.env.db
volumes:
- ./postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
.env.db - хранит данные авторизации и находится по пути /docker/postgres/.env.db Каким образом возможно передать значения в образ с помощью безопасного env:
POSTGRES_USER=user
POSTGRES_PASSWORD=pass
POSTGRES_DB=database
Видел вариант: docker-compose.yml
version: '3.1'
services:
my-service:
build:
context: .
args:
- RAILS_ENV=${RAILS_ENV:-production}
environment:
- RAILS_ENV=${RAILS_ENV:-production}
Dockerfile
FROM postgres
ARG RAILS_ENV=production
ENV RAILS_ENV $RAILS_ENV
RUN if [ "$RAILS_ENV" = "production" ] ; then echo "production env"; else echo "non-production env: $RAILS_ENV"; fi
Но не нашел информации как можно такое реализовать и возможно ли вообще, возможно кто то успешно это использует? Поделитесь информацией пожалуйста!