在 Ubuntu 上让 Node.js 适配不同项目,通常包含以下几个层面的事情:版本管理、依赖安装、环境配置、构建运行。下面按常见场景给你一套实用做法。
不同项目常需要不同 Node 版本,推荐用 nvm(Node Version Manager)。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc
nvm install 18
nvm install 20
nvm use 18
在项目根目录创建:
echo "18" > .nvmrc
进入项目后执行:
nvm use
rm -rf node_modules package-lock.json
npm install
或使用更快的包管理器:
npm install -g pnpm
pnpm install
export NODE_OPTIONS=--openssl-legacy-provider
cp .env.example .env
常见内容:
NODE_ENV=development
PORT=3000
在代码中读取:
process.env.PORT
npm run dev
# 或
node app.js
npm install -g pm2
pm2 start app.js
pm2 startup
pm2 save
docker build -t my-node-app .
docker run -p 3000:3000 my-node-app
sudo ufw allow 3000
sudo timedatectl set-timezone Asia/Shanghai
locale
| 项目类型 | 适配方式 |
|---|---|
| Vue / React | nvm use + pnpm install |
| Express / Nest | pm2 启动 |
| Next.js | npm run build && npm start |
| 老项目 | 降级 Node + legacy OpenSSL |
git clone 项目
cd 项目
nvm use
npm install
cp .env.example .env
npm run dev
如果你能告诉我:
我可以给你更精确的一步步适配方案。