установите Process.env.NODE_ENV в NodeJS

Мне нужно установить для процесса.env.NODE_ENV значение «производство» в локальном коде NestJS. шаги, которые я пробовал-

  1. В package.json для сценария подачи я добавил NODE_ENV=production.
  2. в package.json для скрипта сборки добавлен nx build --prod.

Даже после этих настроек я получаю «разработку» в процессе.env.NODE_ENV.

ищете решение, позволяющее установить для NODE_ENV значение «производство» на локальном компьютере.

Я использую монорепо Nx.

2 ответа

NestJS рекомендует «создатьConfigModuleчто обнажаетConfigServiceкоторый загружает соответствующий файл .env".

Вы можете сделать это с помощью npm-пакета @nestjs/config , который использует dotenv под капотом.

Он загружает переменные среды из.envпо умолчанию находится в корневом каталоге приложения.

Все объяснено в их документации: https://docs.nestjs.com/techniques/configuration .

Не следует устанавливать переменные ENV в package.json. Используйте «.env» для хранения всех переменных среды в соответствии с средой. Не забудьте добавить то же самое в свой gitignore.

Для этого можно использовать очень известный пакет:

      npm install dotenv --save

Создайте файл .env в корне вашего проекта.

      NODE_ENV=PRODUCTION
      require('dotenv').config()
console.log(process.env)

В ES6

      import 'dotenv/config'
Другие вопросы по тегам