Process.env.VAR_NAME не определен даже после экспорта - PullRequest
0 голосов
/ 10 мая 2019

У меня возникли проблемы с доступом к переменной окружения, которую я создал на сервере Linux. Я установил переменную навсегда, добавив: export VAR_NAME=value В файл / etc / environment.

Переменная появляется, когда я использую команду printenv, но когда я запускаю сервер с использованием PM2, она не существует при вызове process.env.VAR_NAME.

Я попытался перезагрузить компьютер, перезапустить bash и перезапустить процессы pm2 несколько раз. Кажется, что какой-то экземпляр нужно перезапустить, потому что из моего понимания, то, что я записал в файл / etc / environment, запускается при запуске, поэтому переменная технически не постоянна, поэтому перезагрузка ничего не делает.

Любая информация о том, какой экземпляр нужно перезапустить, может помочь, или другой способ сделать это полностью хорош.

Редактировать
Вызов process.env в приложении узла не выглядит как неопределенный, я вижу все переменные, перечисленные в приложении, но созданная мной переменная там не указана. но он указан при звонке с терминала

1 Ответ

0 голосов
/ 10 мая 2019

Я считаю, что вы ищете этот пакет. https://www.npmjs.com/package/dotenv

Пакет dotenv позволяет вам создать в корневом каталоге вашего проекта файл с именем ".env", в который вы можете добавить переменные среды для вашего процесса.

Вы можете узнать больше об этом из этого урока https://www.twilio.com/blog/working-with-environment-variables-in-node-js-html

Я не верю, что вы можете "экспортировать" переменные в вашем терминале, чтобы они появлялись в объекте process.env.

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