Node.js Ubuntu、NodeJs和环境文件
我的NodeJS myApp1及其.ENV文件()加载有问题 当我像下面这样执行它时,它会在我的.ENV文件中部分加载我的参数Node.js Ubuntu、NodeJs和环境文件,node.js,ubuntu,environment-variables,dotenv,Node.js,Ubuntu,Environment Variables,Dotenv,我的NodeJS myApp1及其.ENV文件()加载有问题 当我像下面这样执行它时,它会在我的.ENV文件中部分加载我的参数 root@Monster:/# node /home/Octopus/Applications/Test/MyApp1/1.0.12/server.js 如果我这样做 cd Home cd tb (my username) 然后再次运行完全相同的命令-->所有.ENV值将只是未定义/不加载 问:我在Ubuntu中执行NodeJS应用程序的dir和path如何影响我的
root@Monster:/# node /home/Octopus/Applications/Test/MyApp1/1.0.12/server.js
如果我这样做
cd Home
cd tb (my username)
然后再次运行完全相同的命令-->所有.ENV值将只是未定义/不加载
问:我在Ubuntu中执行NodeJS应用程序的dir和path如何影响我的.ENV参数加载(部分)与否
my.env文件中的一行示例:PROJECT\u NAME=Test
它在NodeJS中是这样加载的(作为第一个命令):require('dotenv').config()代码>
它的用法如下:process.env.PROJECT\u NAME
.env文件位于我的项目文件夹的根目录中——同样,所有东西都可以在windows上工作,在Ubuntu的另一个项目中也是如此……但是这个项目由于奇怪的原因无法正确加载
几乎解决了强>
这失败了:
root@Monster:/# pm2 start /home/Octopus/Applications/Test/MyApp/1.0.17/server.js --name MyApp
这项工作:
root@Monster:/# cd home/Octopus/Applications/Test/MyApp/1.0.17/
root@Monster:/home/Octopus/Applications/Test/MyApp/1.0.17# pm2 start server.js --name MyApp
但是为什么会有区别呢?这种方法在Ubuntu上总是有效的:
root@Monster:/# cd home/Octopus/Applications/Test/MyApp/1.0.17/
root@Monster:/home/Octopus/Applications/Test/MyApp/1.0.17# pm2 start server.js --name MyApp
首先将cd放入部署目录,然后从那里运行PM2。能否提供.env
文件和该文件的路径?能否向我们展示您的服务器.js
和.env
?我已更新了描述-并回答了您的问题:-)