在 Debian 上配置 Node.js 的环境变量,通常有两种常见场景:系统/用户级环境变量(如 PATH) 和 Node 应用运行所需的环境变量(如 PORT、NODE_ENV)。下面分别说明。
which node
# 常见路径
# /usr/bin/node
# /usr/local/bin/node
# ~/.nvm/versions/node/vxx/bin
如果 which node 为空,说明没进 PATH。
编辑当前用户环境变量:
nano ~/.bashrc
在末尾添加(示例):
export PATH=$PATH:/usr/local/bin
或(nvm 示例):
export PATH=$HOME/.nvm/versions/node/v20.11.0/bin:$PATH
生效:
source ~/.bashrc
sudo nano /etc/profile
添加:
export PATH=$PATH:/usr/local/bin
或:
sudo nano /etc/environment
修改:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
NODE_ENV=production PORT=3000 node app.js
nano ~/.bashrc
添加:
export NODE_ENV=production
export PORT=3000
source ~/.bashrc
安装:
npm install dotenv
代码:
require('dotenv').config();
console.log(process.env.NODE_ENV);
.env 文件:
NODE_ENV=production
PORT=3000
编辑服务文件:
sudo nano /etc/systemd/system/node-app.service
示例:
[Unit]
Description=Node App
After=network.target
[Service]
User=www-data
WorkingDirectory=/var/www/app
ExecStart=/usr/bin/node app.js
Environment=NODE_ENV=production
Environment=PORT=3000
[Install]
WantedBy=multi-user.target
重载并启动:
sudo systemctl daemon-reload
sudo systemctl start node-app
node -v
npm -v
echo $NODE_ENV
如果你是用 apt / nvm / 源码编译 安装的 Node,可以告诉我,我可以给你更精确的配置方式。