TL / DR: можно ли использовать .env
файловые переменные в директивах environment
docker-compose?
У меня есть Dockerfile
, который использует переменную ARG
для копирования файлов на основе переменной среды.
В моем docker-compose
я хочу запустить две версии этого контейнера с различной конфигурацией.
Есть ли способ, где я могу установить разные пути к файлам в одном файле .env
и создать его дважды, как в примере ниже?
Или есть более разумный способ сделать это?
/
/.env
/docker-compose.yml
/app
/app/Dockerfile
/version1/data
/version2/data
/. Окр
VERSION_1_PATH=./version1/data
VERSION_2_PATH=./version2/data
/ приложение / Dockerfile
FROM node:latest
ARG APP_PATH # pull this environment variable
COPY $APP_PATH /var/app/ # use it to copy source to the same generic destination
/ докер-compose.yml
version: "3"
services:
version1:
build: ./app
container_name: version1
env_file:
- '.env'
environment:
APP_PATH: ${VERSION_1_PATH}
version2:
build: ./app
container_name: version2
env_file:
- '.env'
environment:
APP_PATH: ${VERSION_2_PATH}