完善安装脚本和文档

This commit is contained in:
tian 2026-02-25 16:32:38 +08:00
parent f57253b36e
commit 5fefa8a154
3 changed files with 54 additions and 13 deletions

View File

@ -32,18 +32,33 @@
| 组件 | 版本 | 说明 | | 组件 | 版本 | 说明 |
|------|------|------| |------|------|------|
| Go | 1.23+ | 运行时/编译环境 | | Go | 1.23+ | **编译环境(仅构建机需要)** |
| chi | v5.2.3 | Web 框架 | | chi | v5.2.3 | Web 框架(已静态编译到二进制) |
| cors | v1.2.2 | CORS 中间件 | | cors | v1.2.2 | CORS 中间件(已静态编译到二进制) |
| uuid | v1.6.0 | UUID 生成库 | | uuid | v1.6.0 | UUID 生成库(已静态编译到二进制) |
> **注意**: Go 编译生成的是**静态链接的二进制文件**,目标机器(生产环境)**不需要**安装 Go 运行时,只需要 Linux 内核即可运行。
### 1.3 部署流程概览 ### 1.3 部署流程概览
``` ```
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ ┌──────────────────────────────────────────────────────────────────────┐
│ 联网机器准备 │ --> │ 打包到光盘 │ --> │ 离线环境部署 │ │ 联网机器(构建环境) │
│ (下载依赖/编译) │ │ /USB/ISO │ │ (Ubuntu 22.04) │ │ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────┐ │
└─────────────────┘ └─────────────────┘ └─────────────────┘ │ │ 安装 Go 1.23 │ -> │ 编译二进制 │ -> │ 打包部署包 │ │
│ │ 下载依赖 │ │ managerd │ │ (包含静态二进制文件) │ │
│ └──────────────┘ └──────────────┘ └──────────────────────┘ │
└──────────────────────────────────────────────────────────────────────┘
▼ (拷贝到光盘/USB)
┌──────────────────────────────────────────────────────────────────────┐
│ 离线机器(生产环境) │
│ ┌──────────────────────────────────────────────────────────────┐ │
│ │ 无需 Go 运行时!直接运行编译好的静态二进制文件 │ │
│ │ - ./scripts/3588admin install │ │
│ │ - ./scripts/3588admin start │ │
│ └──────────────────────────────────────────────────────────────┘ │
└──────────────────────────────────────────────────────────────────────┘
``` ```
--- ---

View File

@ -361,17 +361,34 @@ sudo systemctl disable 3588admin # 禁用自启
### 场景1: 首次部署 ### 场景1: 首次部署
> **说明**: 以下流程在联网机器上构建部署包,然后拷贝到离线生产环境安装。目标机器**不需要** Go 运行时。
```bash ```bash
# 在联网机器上 # ========== 在联网机器上(构建环境)==========
cd 3588AdminBackend/scripts/deploy cd 3588AdminBackend/scripts/deploy
# 构建离线部署包(包含编译好的静态二进制文件)
./build-offline-package.sh ./build-offline-package.sh
# 复制到光盘/USB挂载到生产服务器 # 输出: build/3588AdminBackend-离线部署包-YYYYMMDD.tar.gz
# 在生产服务器上 # 复制到光盘/USB/ISO然后挂载到生产服务器
# ========== 在生产服务器上(离线环境)==========
# 解压部署包
tar -xzf 3588AdminBackend-离线部署包-*.tar.gz
cd 3588AdminBackend-离线部署包-*/
# 检查环境(无需 Go 运行时)
sudo ./scripts/3588admin check sudo ./scripts/3588admin check
# 安装(无需 Go 运行时)
sudo ./scripts/3588admin install sudo ./scripts/3588admin install
sudo nano /opt/3588admin/config/managerd.json # 修改配置
# 修改配置
sudo nano /opt/3588admin/config/managerd.json
# 启动服务
sudo 3588admin start sudo 3588admin start
sudo 3588admin status sudo 3588admin status
``` ```

View File

@ -20,9 +20,10 @@ PACKAGE_DIR="$BUILD_DIR/$PACKAGE_NAME"
# Go版本检测 # Go版本检测
GO_VERSION=$(go version 2>/dev/null | awk '{print $3}') GO_VERSION=$(go version 2>/dev/null | awk '{print $3}')
# 检查Go # 检查Go(仅在构建机上需要)
command -v go >/dev/null 2>&1 || { command -v go >/dev/null 2>&1 || {
echo -e "${RED}错误: 未找到 Go 命令${NC}" echo -e "${RED}错误: 未找到 Go 命令${NC}"
echo "请在联网的构建机上运行此脚本"
exit 1 exit 1
} }
@ -31,6 +32,9 @@ echo "项目目录: $PROJECT_DIR"
echo "构建目录: $BUILD_DIR" echo "构建目录: $BUILD_DIR"
echo "Go 版本: $GO_VERSION" echo "Go 版本: $GO_VERSION"
echo "" echo ""
echo -e "${YELLOW}说明: 此脚本在联网机器上运行,生成包含静态二进制文件的离线部署包${NC}"
echo -e "${YELLOW} 目标机器(生产环境)无需安装 Go 运行时${NC}"
echo ""
# 清理旧的构建 # 清理旧的构建
echo "[1/7] 清理旧构建..." echo "[1/7] 清理旧构建..."
@ -118,6 +122,11 @@ cat > "$PACKAGE_DIR/README-离线安装.txt" << 'EOF'
【系统要求】 【系统要求】
- Ubuntu 22.04.5 LTS (x86_64) - Ubuntu 22.04.5 LTS (x86_64)
- root 权限 - root 权限
【重要说明】
✓ 本部署包已包含静态编译的二进制文件
✓ 目标机器无需安装 Go 运行时
✓ 无需互联网连接(纯离线安装)
【安装步骤】 【安装步骤】