Мне нужно установить некоторую переменную среды для всех пользователей и процессов внутри контейнера Docker.Он должен быть установлен при запуске контейнера, а не в Dockerfile
, потому что это зависит от работающей среды.
Так что простой Dockerfile
FROM ubuntu
RUN echo 'export TEST=test' >> '/root/.bashrc'
хорошо работает для интерактивных сеансов docker run -ti test bash
тогда env
и есть TEST=test
но когда docker run -ti test env
нет TEST
я пытался
RUN echo 'export TEST=test' >> '/etc/environment'
RUN echo 'TEST="test"' >> '/etc/environment'
RUN echo 'export TEST=test' >> /etc/profile.d/1.sh
ENTRYPOINT export TEST=test
Ничего не помогает.
Зачем мне это нужно.У меня есть переменная http_proxy
внутри контейнера, автоматически устанавливаемая Docker, мне нужно установить другие переменные, основываясь на ней, то есть JAVA_OPT
, сделать это для всей системы, для всех пользователей и процессов, а также в работающей среде, а не во время сборки.