dotenv file is not loading environment variables
Here is a single-line solution:
require('dotenv').config({ path: require('find-config')('.env') })
This will recurse parent directories until it finds a .env file to use.
You can also alternatively use this module called ckey inspired from one-liner above.
.env file from main directory.
# dotenv sample content
[email protected]
PASSWORD=iampassword123
API_KEY=1234567890
some js file from sub-directory
const ck = require('ckey');
const userName = ck.USER; // [email protected]
const password = ck.PASSWORD; // iampassword123
const apiKey = ck.API_KEY; // 1234567890
This solved my issues in Node v8.14.1
:
const path = require('path')
require('dotenv').config({ path: path.resolve(__dirname, '../.env') })
Simply doing require('dotenv').config({path:__dirname+'/./../../.env'})
resulted in a location that resolved as /some/path/to/env/./../../.env
How about use require('dotenv').config({path:__dirname+'/./../../.env'})
?
Your problem seems to be the execution path.