完善安装脚本和文档
This commit is contained in:
parent
f57253b36e
commit
5fefa8a154
@ -32,18 +32,33 @@
|
||||
|
||||
| 组件 | 版本 | 说明 |
|
||||
|------|------|------|
|
||||
| Go | 1.23+ | 运行时/编译环境 |
|
||||
| chi | v5.2.3 | Web 框架 |
|
||||
| cors | v1.2.2 | CORS 中间件 |
|
||||
| uuid | v1.6.0 | UUID 生成库 |
|
||||
| Go | 1.23+ | **编译环境(仅构建机需要)** |
|
||||
| chi | v5.2.3 | Web 框架(已静态编译到二进制) |
|
||||
| cors | v1.2.2 | CORS 中间件(已静态编译到二进制) |
|
||||
| uuid | v1.6.0 | UUID 生成库(已静态编译到二进制) |
|
||||
|
||||
> **注意**: Go 编译生成的是**静态链接的二进制文件**,目标机器(生产环境)**不需要**安装 Go 运行时,只需要 Linux 内核即可运行。
|
||||
|
||||
### 1.3 部署流程概览
|
||||
|
||||
```
|
||||
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
|
||||
│ 联网机器准备 │ --> │ 打包到光盘 │ --> │ 离线环境部署 │
|
||||
│ (下载依赖/编译) │ │ /USB/ISO │ │ (Ubuntu 22.04) │
|
||||
└─────────────────┘ └─────────────────┘ └─────────────────┘
|
||||
┌──────────────────────────────────────────────────────────────────────┐
|
||||
│ 联网机器(构建环境) │
|
||||
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────────┐ │
|
||||
│ │ 安装 Go 1.23 │ -> │ 编译二进制 │ -> │ 打包部署包 │ │
|
||||
│ │ 下载依赖 │ │ managerd │ │ (包含静态二进制文件) │ │
|
||||
│ └──────────────┘ └──────────────┘ └──────────────────────┘ │
|
||||
└──────────────────────────────────────────────────────────────────────┘
|
||||
│
|
||||
▼ (拷贝到光盘/USB)
|
||||
┌──────────────────────────────────────────────────────────────────────┐
|
||||
│ 离线机器(生产环境) │
|
||||
│ ┌──────────────────────────────────────────────────────────────┐ │
|
||||
│ │ 无需 Go 运行时!直接运行编译好的静态二进制文件 │ │
|
||||
│ │ - ./scripts/3588admin install │ │
|
||||
│ │ - ./scripts/3588admin start │ │
|
||||
│ └──────────────────────────────────────────────────────────────┘ │
|
||||
└──────────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
@ -361,17 +361,34 @@ sudo systemctl disable 3588admin # 禁用自启
|
||||
|
||||
### 场景1: 首次部署
|
||||
|
||||
> **说明**: 以下流程在联网机器上构建部署包,然后拷贝到离线生产环境安装。目标机器**不需要** Go 运行时。
|
||||
|
||||
```bash
|
||||
# 在联网机器上
|
||||
# ========== 在联网机器上(构建环境)==========
|
||||
cd 3588AdminBackend/scripts/deploy
|
||||
|
||||
# 构建离线部署包(包含编译好的静态二进制文件)
|
||||
./build-offline-package.sh
|
||||
|
||||
# 复制到光盘/USB,挂载到生产服务器
|
||||
# 输出: build/3588AdminBackend-离线部署包-YYYYMMDD.tar.gz
|
||||
|
||||
# 在生产服务器上
|
||||
# 复制到光盘/USB/ISO,然后挂载到生产服务器
|
||||
|
||||
# ========== 在生产服务器上(离线环境)==========
|
||||
# 解压部署包
|
||||
tar -xzf 3588AdminBackend-离线部署包-*.tar.gz
|
||||
cd 3588AdminBackend-离线部署包-*/
|
||||
|
||||
# 检查环境(无需 Go 运行时)
|
||||
sudo ./scripts/3588admin check
|
||||
|
||||
# 安装(无需 Go 运行时)
|
||||
sudo ./scripts/3588admin install
|
||||
sudo nano /opt/3588admin/config/managerd.json # 修改配置
|
||||
|
||||
# 修改配置
|
||||
sudo nano /opt/3588admin/config/managerd.json
|
||||
|
||||
# 启动服务
|
||||
sudo 3588admin start
|
||||
sudo 3588admin status
|
||||
```
|
||||
|
||||
@ -20,9 +20,10 @@ PACKAGE_DIR="$BUILD_DIR/$PACKAGE_NAME"
|
||||
# Go版本检测
|
||||
GO_VERSION=$(go version 2>/dev/null | awk '{print $3}')
|
||||
|
||||
# 检查Go
|
||||
# 检查Go(仅在构建机上需要)
|
||||
command -v go >/dev/null 2>&1 || {
|
||||
echo -e "${RED}错误: 未找到 Go 命令${NC}"
|
||||
echo "请在联网的构建机上运行此脚本"
|
||||
exit 1
|
||||
}
|
||||
|
||||
@ -31,6 +32,9 @@ echo "项目目录: $PROJECT_DIR"
|
||||
echo "构建目录: $BUILD_DIR"
|
||||
echo "Go 版本: $GO_VERSION"
|
||||
echo ""
|
||||
echo -e "${YELLOW}说明: 此脚本在联网机器上运行,生成包含静态二进制文件的离线部署包${NC}"
|
||||
echo -e "${YELLOW} 目标机器(生产环境)无需安装 Go 运行时${NC}"
|
||||
echo ""
|
||||
|
||||
# 清理旧的构建
|
||||
echo "[1/7] 清理旧构建..."
|
||||
@ -118,6 +122,11 @@ cat > "$PACKAGE_DIR/README-离线安装.txt" << 'EOF'
|
||||
【系统要求】
|
||||
- Ubuntu 22.04.5 LTS (x86_64)
|
||||
- root 权限
|
||||
|
||||
【重要说明】
|
||||
✓ 本部署包已包含静态编译的二进制文件
|
||||
✓ 目标机器无需安装 Go 运行时
|
||||
✓ 无需互联网连接(纯离线安装)
|
||||
|
||||
【安装步骤】
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user