-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeploy.sh
More file actions
59 lines (50 loc) · 1.54 KB
/
deploy.sh
File metadata and controls
59 lines (50 loc) · 1.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/bash
# 随舞社区服务器部署脚本
set -e
echo "========================================="
echo " 随舞社区服务器 - 部署脚本"
echo "========================================="
# 1. 检查 Node.js 版本
echo "📋 检查环境..."
NODE_VERSION=$(node -v | cut -d'v' -f2 | cut -d'.' -f1)
if [ "$NODE_VERSION" -lt 18 ]; then
echo "❌ 需要 Node.js 18 或更高版本"
exit 1
fi
echo "✅ Node.js 版本: $(node -v)"
# 2. 安装依赖
echo "📦 安装依赖..."
npm install --production
# 3. 创建数据目录
echo "📁 创建数据目录..."
mkdir -p data
# 4. 复制环境变量配置
if [ ! -f .env ]; then
echo "📝 创建环境变量配置..."
cp .env.example .env
echo "⚠️ 请编辑 .env 文件配置生产环境参数"
echo "nano .env"
read -p "按回车继续..."
fi
# 5. 启动服务器
echo "🚀 启动服务器..."
if command -v pm2 &> /dev/null; then
echo "使用 PM2 启动..."
pm2 start index.js --name community-server
pm2 save
echo "✅ 服务器已启动 (PM2)"
echo "查看日志: pm2 logs community-server"
echo "查看状态: pm2 status"
else
echo "使用 Node.js 直接启动..."
nohup node index.js > server.log 2>&1 &
echo "✅ 服务器已启动"
echo "查看日志: tail -f server.log"
echo "进程ID: $!"
fi
echo ""
echo "========================================="
echo " 部署完成!"
echo "========================================="
echo "服务器地址: http://localhost:8787"
echo "健康检查: curl http://localhost:8787/api/health"