在 Debian 上备份 Node.js 项目,通常不是只备份 Node.js 本身,而是备份项目代码、依赖、配置、数据和环境。下面按常见场景给你一套完整方案,从简单到专业。
tar -czvf nodejs-project-$(date +%F).tar.gz /path/to/project
包含内容:
package.jsonnode_modules(可选,但推荐)⚠️ 如果
node_modules很大,可跳过,用npm install重新生成
tar --exclude=node_modules -czvf nodejs-project-$(date +%F).tar.gz /path/to/project
恢复时:
npm install
node -v
npm -v
如果你用 nvm:
nvm list
✅ 备份 nvm 目录:
tar -czvf nvm-backup.tar.gz ~/.nvm
恢复:
tar -xzvf nvm-backup.tar.gz -C ~/
mongodump --out /backup/mongo-$(date +%F)
mysqldump -u user -p dbname > dbname-$(date +%F).sql
常见文件:
.envconfig/*.jsonecosystem.config.js(PM2)cp .env .env.bak
或统一备份:
tar -czvf config-backup.tar.gz .env ecosystem.config.js
pm2 save
pm2 list
pm2 startup
恢复:
pm2 resurrect
crontab -e
每天凌晨 2 点:
0 2 * * * tar -czvf /backup/node-$(date +\%F).tar.gz /var/www/nodeapp
docker save mynodeapp > mynodeapp.tar
docker cp container:/app /backup/app
| 项目 | 是否备份 |
|---|---|
| 项目源码 | ✅ |
| package.json | ✅ |
| node_modules | ❌(可重建) |
| .env | ✅ |
| 数据库 | ✅ |
| Node 版本 | ✅ |
| PM2 配置 | ✅ |
tar -xzvf nodejs-project-2026-01-21.tar.gz -C /var/www/
cd /var/www/nodeapp
npm install
pm2 start ecosystem.config.js
如果你愿意,可以告诉我:
我可以帮你定制一套完整备份 + 恢复脚本。