Здравствуйте. Подскажите пожалуйста. Почему-то при создании контейнера
docker-compose build
не видит переменную которая находится в файле .env
APP_HOME=/coins
Вот кусок docker-compose.yml где подключается файл
app:
build: .
command: >
bash -c "
bundle check
|| bundle install --clean
&& rm -f tmp/pids/server.pid
&& bundle exec rails db:migrate
&& bundle exec rails server"
ports:
- $PORT:$PORT
volumes:
- .:$APP_HOME
environment:
DATABASE_URL: postgresql://$POSTGRES_USER:$POSTGRES_PASSWORD@$POSTGRES_HOST:$POSTGRES_PORT/$POSTGRES_DB?pool=$POSTGRES_POOL
REDIS_PROVIDER: redis://:$REDIS_PASSWORD@$REDIS_HOST:$REDIS_PORT?db=$REDIS_DB
BUNDLE_PATH: ${APP_HOME}/gems
env_file:
- .env
depends_on:
- db
файл Dockerfile
FROM ruby:2.5.1
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs vim
RUN mkdir $APP_HOME
WORKDIR $APP_HOME
А вот ошибка:
Building app
Step 1/4 : FROM ruby:2.5.1
---> 1624ebb80e3e
Step 2/4 : RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs vim
---> Using cache
---> a5d9b4e846ff
Step 3/4 : RUN mkdir $APP_HOME
---> Running in 0447e2436825
mkdir: missing operand
Try 'mkdir --help' for more information.
ERROR: Service 'app' failed to build: The command '/bin/sh -c mkdir $APP_HOME' returned a non-zero code:
Можно конечно добавить переменную в Dockerfile, но как-то хотелось бы иметь переменные в одном файлике.
Спасибо.