Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Node js, process.env not reading enviroment variables

Even though I can see that an environment variable was created on windows, process.env always returns undefined. I did set all my variables, and when I check them manually, they all appear in the prompt, but the process.env always stays undefined.

P.S. I don't have admin privileges, except when I check the process.env.NODE_ENV.

enter image description here

like image 756
Dardan Gjoka Avatar asked Apr 02 '26 11:04

Dardan Gjoka


1 Answers

You need to read them first.

Use the dotenv package.

Install:

npm install dotenv

In you project code:

require('dotenv').config()

Add .env file in you project folder like this:

DB_HOST=localhost
DB_USER=root
DB_PASS=*be sure there is strong pass*

Try get env var like this:

const db = require('db')
db.connect({
  host: process.env.DB_HOST,
  username: process.env.DB_USER,
  password: process.env.DB_PASS
})

By the way, it is not enough to write them to a file in order for them to become environment variables. You need to write them in the console and then they become environment variables. The .env file method lets you write them to a file and read them from there through the donenv package.

like image 86
Doumor Avatar answered Apr 03 '26 23:04

Doumor