Как запустить приложение узла из подкаталога с переменными .env этого подкаталога? - PullRequest
1 голос
/ 28 сентября 2019

У меня есть приложение Node.js под названием app.js, которое хранится в каталоге B.

Для корректной работы этого скрипта ему нужны переменные окружения.Они хранятся в файле с именем .env, который также находится в каталоге B.

В моем app.js переменные env загружаются через require("dotenv").config();, и я могу получить к ним доступ, например, process.env.SOME_VAR

Так что, если я в настоящее время нахожусь в каталоге B, я могу просто использовать node app, и мое приложение будет работать нормально.

Но если я иду в родительский каталог A и пытаюсь запустить мойприложение через

node ./B/app

не будет выполнено, поскольку, похоже, не имеет доступа к переменным окружения файла .env.

Итак, мой вопрос: как я могу запустить свой скрипт из его родительской папки, если я хочу сохранить файл .env в том же каталоге?

1 Ответ

0 голосов
/ 28 сентября 2019

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

const dotenv = require('dotenv');

// ...

// Then go ahead to load the .env file content into process.env
dotenv.config({ path: '/full/custom/path/to/your/env/vars' });
...