60 lines
1.3 KiB
Bash
60 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
echo "开始安装装备成本估算系统..."
|
|
|
|
# 检查Python版本
|
|
python3 -V || {
|
|
echo "错误: 需要 Python 3.8+"
|
|
exit 1
|
|
}
|
|
|
|
# 检查Node.js版本
|
|
node -v || {
|
|
echo "错误: 需要 Node.js 14+"
|
|
exit 1
|
|
}
|
|
|
|
# 创建必要的目录
|
|
echo "创建系统目录..."
|
|
mkdir -p {logs,data,models}
|
|
|
|
# 安装后端依赖
|
|
echo "安装后端依赖..."
|
|
python3 -m venv venv
|
|
source venv/bin/activate
|
|
pip install -r requirements.txt
|
|
|
|
# 安装前端依赖
|
|
echo "安装前端依赖..."
|
|
cd frontend
|
|
npm install
|
|
npm run build
|
|
cd ..
|
|
|
|
# 配置文件
|
|
if [ ! -f config/.env ]; then
|
|
echo "创建配置文件..."
|
|
cp config/.env.template config/.env
|
|
echo "请修改 config/.env 中的配置"
|
|
fi
|
|
|
|
# 初始化数据库
|
|
echo "初始化数据库..."
|
|
read -p "请输入MySQL root密码: " mysqlpass
|
|
mysql -u root -p$mysqlpass < src/schema.sql
|
|
|
|
# 导入测试数据(可选)
|
|
read -p "是否导入测试数据?(y/n) " import_test_data
|
|
if [ "$import_test_data" = "y" ]; then
|
|
mysql -u root -p$mysqlpass equipment_cost_db < src/init_data.sql
|
|
fi
|
|
|
|
# 设置权限
|
|
echo "设置文件权限..."
|
|
chmod +x scripts/*.sh
|
|
chmod 755 logs models data
|
|
chmod 600 config/.env
|
|
|
|
echo "安装完成!"
|
|
echo "请检查并修改 config/.env 中的配置"
|
|
echo "使用 ./scripts/start.sh 启动服务" |