Ric*_*ard 2 linux ubuntu node.js pm2
当我在我的Ubuntu Linux服务器上运行我的nodejs应用程序时,node server.js它可以正常工作,并$db使用process.env.db输出环境变量的值.
但是,app在运行时会中断sudo pm2 start server.js,将环境变量视为未定义.
我尝试在以下文件中添加变量:
db="hello"db="hello"export db="hello"我也重新启动并运行source ~/.bashrc以确保变量可用.
我想我已经尝试了这里提到的一切,我不知道还能做什么:
请注意,说source ~/.bashrc您正在加载当前用户的变量.但是,当您说sudo ...您正在与用户一起运行时root,所以这不会改变.
你可以做的是使用sudo具有-E:
sudo -E pm2 start server.js
Run Code Online (Sandbox Code Playgroud)
来自man sudo:
-E, --preserve-env
Indicates to the security policy that the user wishes to reserve their
existing environment variables. The security policy may eturn an error
if the user does not have permission to preserve the environment.
Run Code Online (Sandbox Code Playgroud)