Использование системных переменных среды в узле / реагировать с докером - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть приложение реагирования (CRA), оно будет работать внутри контейнера докера, для которого я установлю переменную среды "API_KEY" = "some_value".Для примера окон это Системные свойства -> Переменные среды -> Системные переменные -> Переменная = "API_KEY" и Значение = "some_value".

Я хотел бы получить доступ к этой переменной в приложении по адресувремя выполнения.Это для API_KEY для Azure App Insights.

https://docs.microsoft.com/en-us/azure/application-insights/app-insights-javascript#add-the-sdk-script-to-your-app-or-web-pages

Приведенная выше ссылка показывает <your instrumentation key>.Я буду развертывать одно и то же приложение в нескольких средах.Каждый экземпляр приложения должен будет использовать свои специфические идеи приложения.Таким образом, цель здесь состоит в том, чтобы указать этот API_KEY в переменных среды, которые будут отличаться для каждого из контейнеров докера.

Обратите внимание, что я знаю о nodeJs и process.env.API_KEY, но это не считывает изсистемные переменные среды.Есть ли способ получить системную переменную для связи с process.env для экземпляра узла?

-PS этот запрос к службе API, которая должна быть запущена сразу.Поэтому о запросе API для его получения не может быть и речи.Он будет доступен конечному клиенту, так как он регистрирует события JavaScript для каждого клиента.

1 Ответ

0 голосов
/ 14 ноября 2018

Ответ НЕТ.Вы не можете читать системные переменные окружения.Однако вы можете установить переменные среды процесса в файле * .env.В моем случае я сгенерирую этот env-файл с помощью сценария оболочки, который будет запущен Dockerfile.После этого будет отменен процесс для переменных среды, которые начинаются с «REACT_APP _ #».

Надеюсь, что это поможет другим.

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