forked from justlovemaki/AIClient-2-API
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinstall-and-run.sh
More file actions
executable file
·106 lines (89 loc) · 2.64 KB
/
install-and-run.sh
File metadata and controls
executable file
·106 lines (89 loc) · 2.64 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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
#!/bin/bash
# 设置中文环境
export LC_ALL=zh_CN.UTF-8
export LANG=zh_CN.UTF-8
echo "========================================"
echo " AI Client 2 API 快速安装启动脚本"
echo "========================================"
echo
# 处理参数
FORCE_PULL=0
for arg in "$@"; do
if [ "$arg" == "--pull" ]; then
FORCE_PULL=1
fi
done
# 检查Git并尝试pull
if [ $FORCE_PULL -eq 1 ]; then
echo "[更新] 正在从远程仓库拉取最新代码..."
if command -v git > /dev/null 2>&1; then
git pull
if [ $? -ne 0 ]; then
echo "[警告] Git pull 失败,请检查网络或手动处理冲突。"
else
echo "[成功] 代码已更新。"
fi
else
echo "[警告] 未检测到 Git,跳过代码拉取。"
fi
fi
# 检查Node.js是否已安装
echo "[检查] 正在检查Node.js是否已安装..."
node --version > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "[错误] 未检测到Node.js,请先安装Node.js"
echo "下载地址:https://nodejs.org/"
echo "提示:推荐安装LTS版本"
exit 1
fi
# 获取Node.js版本
NODE_VERSION=$(node --version 2>/dev/null)
echo "[成功] Node.js已安装,版本: $NODE_VERSION"
# 检查npm是否可用
echo "[检查] 正在检查npm是否可用..."
npm --version > /dev/null 2>&1
if [ $? -ne 0 ]; then
echo "[错误] npm不可用,请重新安装Node.js"
exit 1
fi
# 检查package.json是否存在
if [ ! -f "package.json" ]; then
echo "[错误] 未找到package.json文件"
echo "请确保在项目根目录下运行此脚本"
exit 1
fi
echo "[成功] 找到package.json文件"
# 检查 pnpm 是否安装
if command -v pnpm > /dev/null 2>&1; then
PKG_MANAGER=pnpm
else
PKG_MANAGER=npm
fi
echo "[安装] 正在使用 $PKG_MANAGER 安装/更新依赖..."
echo "这可能需要几分钟时间,请耐心等待..."
echo "正在执行: $PKG_MANAGER install..."
$PKG_MANAGER install
if [ $? -ne 0 ]; then
echo "[错误] 依赖安装失败"
echo "请检查网络连接或手动运行 '$PKG_MANAGER install'"
exit 1
fi
echo "[成功] 依赖安装/更新完成"
# 检查src目录和master.js是否存在
if [ ! -f "src/core/master.js" ]; then
echo "[错误] 未找到src/core/master.js文件"
exit 1
fi
echo "[成功] 项目文件检查完成"
# 启动应用程序
echo
echo "========================================"
echo " 启动AIClient2API服务器..."
echo "========================================"
echo
echo "服务器将在 http://localhost:3000 启动"
echo "访问 http://localhost:3000 查看管理界面"
echo "按 Ctrl+C 停止服务器"
echo
# 启动服务器
node src/core/master.js