164 lines
3.7 KiB
Bash
Executable File
164 lines
3.7 KiB
Bash
Executable File
#!/bin/bash
|
|
# 创建客户端部署包
|
|
|
|
set -e
|
|
|
|
# 颜色定义
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m'
|
|
|
|
PACKAGE_NAME="ljwx-client-v2.0.1"
|
|
PACKAGE_DIR="${PACKAGE_NAME}"
|
|
|
|
echo -e "${BLUE}📦 创建 LJWX 客户端部署包${NC}"
|
|
echo ""
|
|
|
|
# 创建打包目录
|
|
echo -e "${YELLOW}📁 创建打包目录...${NC}"
|
|
rm -rf "$PACKAGE_DIR"
|
|
mkdir -p "$PACKAGE_DIR"
|
|
|
|
# 复制文件
|
|
echo -e "${YELLOW}📋 复制文件...${NC}"
|
|
cp start.sh "$PACKAGE_DIR/"
|
|
cp configure.sh "$PACKAGE_DIR/"
|
|
cp monitor.sh "$PACKAGE_DIR/"
|
|
cp README.md "$PACKAGE_DIR/"
|
|
|
|
# 创建示例配置文件
|
|
echo -e "${YELLOW}⚙️ 创建示例配置...${NC}"
|
|
cat > "$PACKAGE_DIR/.env.example" << 'EOF'
|
|
# LJWX 系统配置示例
|
|
LJWX_VERSION=2.0.1
|
|
REGISTRY=crpi-yilnm6upy4pmbp67.cn-shenzhen.personal.cr.aliyuncs.com/ljwx
|
|
|
|
# 数据库配置
|
|
MYSQL_ROOT_PASSWORD=123456
|
|
MYSQL_DATABASE=test
|
|
MYSQL_USER=ljwx
|
|
MYSQL_PASSWORD=123456
|
|
|
|
# 服务端口配置
|
|
LJWX_BOOT_PORT=9998
|
|
LJWX_BIGSCREEN_PORT=5000
|
|
LJWX_ADMIN_PORT=80
|
|
MYSQL_PORT=3306
|
|
REDIS_PORT=6379
|
|
|
|
# 时区配置
|
|
TZ=Asia/Shanghai
|
|
|
|
# 日志配置
|
|
LOG_LEVEL=INFO
|
|
EOF
|
|
|
|
# 创建快速开始脚本
|
|
cat > "$PACKAGE_DIR/quick-start.sh" << 'EOF'
|
|
#!/bin/bash
|
|
# LJWX 快速开始脚本
|
|
|
|
echo "🚀 LJWX 灵境万象健康管理系统 - 快速开始"
|
|
echo ""
|
|
|
|
# 检查Docker
|
|
if ! command -v docker &> /dev/null; then
|
|
echo "❌ Docker 未安装,请先安装 Docker"
|
|
echo " 安装指南: https://docs.docker.com/get-docker/"
|
|
exit 1
|
|
fi
|
|
|
|
# 运行配置向导
|
|
if [ ! -f .env ]; then
|
|
echo "📝 运行配置向导..."
|
|
./configure.sh
|
|
fi
|
|
|
|
# 启动系统
|
|
echo "🚀 启动系统..."
|
|
./start.sh
|
|
|
|
echo ""
|
|
echo "✅ 快速开始完成!"
|
|
EOF
|
|
|
|
chmod +x "$PACKAGE_DIR/quick-start.sh"
|
|
|
|
# 创建卸载脚本
|
|
cat > "$PACKAGE_DIR/uninstall.sh" << 'EOF'
|
|
#!/bin/bash
|
|
# LJWX 卸载脚本
|
|
|
|
echo "🗑️ LJWX 系统卸载"
|
|
echo ""
|
|
|
|
read -p "⚠️ 这将完全删除LJWX系统和所有数据,确认继续?(yes/no): " confirm
|
|
|
|
if [ "$confirm" = "yes" ]; then
|
|
echo "🛑 停止服务..."
|
|
./start.sh stop 2>/dev/null || true
|
|
|
|
echo "🧹 清理系统..."
|
|
./start.sh clean 2>/dev/null || true
|
|
|
|
echo "📁 删除配置和数据..."
|
|
rm -rf data/ logs/ config/ backups/
|
|
rm -f .env docker-compose.yml
|
|
|
|
echo "✅ 卸载完成"
|
|
else
|
|
echo "❌ 卸载已取消"
|
|
fi
|
|
EOF
|
|
|
|
chmod +x "$PACKAGE_DIR/uninstall.sh"
|
|
|
|
# 创建版本信息文件
|
|
cat > "$PACKAGE_DIR/VERSION" << EOF
|
|
LJWX 灵境万象健康管理系统
|
|
版本: 2.0.1
|
|
构建日期: $(date '+%Y-%m-%d')
|
|
打包时间: $(date '+%Y-%m-%d %H:%M:%S')
|
|
|
|
组件版本:
|
|
- ljwx-mysql: 2.0.1
|
|
- ljwx-redis: 2.0.1
|
|
- ljwx-boot: 2.0.1
|
|
- ljwx-bigscreen: 2.0.1
|
|
- ljwx-admin: 2.0.1
|
|
|
|
系统要求:
|
|
- Docker 20.0+
|
|
- Docker Compose 2.0+
|
|
- 2GB+ 内存
|
|
- 10GB+ 磁盘空间
|
|
EOF
|
|
|
|
# 创建压缩包
|
|
echo -e "${YELLOW}📦 创建压缩包...${NC}"
|
|
tar -czf "${PACKAGE_NAME}.tar.gz" "$PACKAGE_DIR"
|
|
|
|
# 计算文件大小和校验和
|
|
PACKAGE_SIZE=$(du -h "${PACKAGE_NAME}.tar.gz" | cut -f1)
|
|
PACKAGE_MD5=$(md5sum "${PACKAGE_NAME}.tar.gz" | cut -d' ' -f1)
|
|
|
|
echo ""
|
|
echo -e "${GREEN}✅ 部署包创建完成!${NC}"
|
|
echo ""
|
|
echo -e "${BLUE}📦 包信息:${NC}"
|
|
echo -e " 文件名: ${GREEN}${PACKAGE_NAME}.tar.gz${NC}"
|
|
echo -e " 大小: ${GREEN}${PACKAGE_SIZE}${NC}"
|
|
echo -e " MD5: ${GREEN}${PACKAGE_MD5}${NC}"
|
|
echo ""
|
|
echo -e "${BLUE}📋 客户部署步骤:${NC}"
|
|
echo -e " 1. 上传 ${YELLOW}${PACKAGE_NAME}.tar.gz${NC} 到客户服务器"
|
|
echo -e " 2. 解压: ${YELLOW}tar -xzf ${PACKAGE_NAME}.tar.gz${NC}"
|
|
echo -e " 3. 进入目录: ${YELLOW}cd ${PACKAGE_NAME}${NC}"
|
|
echo -e " 4. 快速开始: ${YELLOW}./quick-start.sh${NC}"
|
|
echo ""
|
|
echo -e "${BLUE}📖 详细说明请查看包内的 README.md${NC}"
|
|
|
|
# 清理临时目录
|
|
rm -rf "$PACKAGE_DIR" |