forked from admin/hair-keeper
29 lines
879 B
Bash
Executable File
29 lines
879 B
Bash
Executable File
#!/bin/bash
|
|
# 此脚本用来直接在当前目录下一键部署生产服务器
|
|
# 需要安装好node、pnpm、pm2来运行程序
|
|
set -e
|
|
|
|
# 配置
|
|
PROJECT_NAME="hair-keeper" # 可自由修改,默认使用本项目模板的名称
|
|
PORT="8000"
|
|
|
|
pnpm run lint
|
|
echo "🔨 开始构建项目..."
|
|
pnpm run build
|
|
|
|
echo "🗄️ 运行数据库迁移..."
|
|
npx prisma migrate deploy
|
|
npx prisma generate
|
|
|
|
echo "🔄 使用PM2重启服务..."
|
|
pm2 describe hair-keeper > /dev/null 2>&1 && pm2 delete hair-keeper
|
|
pm2 start pnpm --name $PROJECT_NAME -- start -p ${PORT}
|
|
# 保存当前 PM2 进程列表的快照,使其在系统重启后能自动恢复
|
|
pm2 save
|
|
|
|
echo "✅ 部署完成!服务运行在端口 ${PORT}"
|
|
echo "📊 查看服务状态: pm2 status"
|
|
echo "📝 查看日志: pm2 logs $PROJECT_NAME"
|
|
echo "❌ 关闭服务: pm2 delete $PROJECT_NAME"
|
|
echo "🎉 部署成功!"
|