Настройка PATH контейнера с параметром ENV - PullRequest
2 голосов
/ 14 марта 2019

У меня есть файл docker-compose, который включает в себя следующее:

 environment:
      DOCUMENT_ROOT: /var/some/dir

Я хотел бы добавить этот путь в свой контейнер.В моем DockerFile я добавляю:

RUN echo "export PATH=$PATH:${DOCUMENT_ROOT}" >> /root/.bashrc

Но это не работает.Кажется, параметр ENV недоступен.

В чем проблема?

Ярон

1 Ответ

2 голосов
/ 14 марта 2019
ARG some_variable_name    
RUN echo "export PATH=$PATH:${some_variable_name}" >> /root/.bashrc

Вы должны использовать ARG в Dockerfile и задавать аргументы в команде сборки:

docker build --build-arg some_variable_name=a_value

ARG доступен только во время сборки образа Docker (RUN и т. Д.), Но непосле создания образа и запуска из него контейнеров (ENTRYPOINT, CMD).Вы можете использовать значения ARG для установки значений ENV, чтобы обойти это.

или в docker-compose:

version: '3'

services:
  somename:
    build:
      context: ./app
      dockerfile: Dockerfile
      args:
        some_variable_name: a_value

Понимание аргументов сборки Docker, переменных среды и DockerСоставьте переменные

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...