2026-01-05 10:31:24 +08:00
|
|
|
# 架构设计
|
|
|
|
|
|
|
|
|
|
## 系统架构
|
|
|
|
|
|
|
|
|
|
### 整体架构
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
┌─────────────┐
|
|
|
|
|
│ 用户 │
|
|
|
|
|
└──────┬──────┘
|
|
|
|
|
│
|
|
|
|
|
▼
|
|
|
|
|
┌─────────────────────────────────────┐
|
|
|
|
|
│ DevOps 平台 │
|
|
|
|
|
├─────────────────────────────────────┤
|
|
|
|
|
│ Gerrit │ Gitea │ Drone CI │
|
|
|
|
|
│ (代码审查)│ (Git仓库)│ (CI/CD) │
|
|
|
|
|
├─────────────────────────────────────┤
|
|
|
|
|
│ MinIO │ Nexus │ MkDocs │
|
|
|
|
|
│ (对象存储)│ (Maven) │ (知识库) │
|
|
|
|
|
└─────────────────────────────────────┘
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
## 服务说明
|
|
|
|
|
|
|
|
|
|
### 代码管理
|
|
|
|
|
|
|
|
|
|
- **Gerrit**: 代码审查和协作
|
|
|
|
|
- **Gitea**: Git 仓库管理
|
|
|
|
|
|
|
|
|
|
### CI/CD
|
|
|
|
|
|
|
|
|
|
- **Drone CI**: 持续集成和部署
|
|
|
|
|
|
|
|
|
|
### 存储服务
|
|
|
|
|
|
|
|
|
|
- **MinIO**: 对象存储,用于构建产物和文件
|
|
|
|
|
- **Nexus**: Maven 仓库,用于依赖管理
|
|
|
|
|
|
|
|
|
|
### 文档服务
|
|
|
|
|
|
|
|
|
|
- **MkDocs**: 个人知识库和文档管理
|
|
|
|
|
|
|
|
|
|
## 技术栈
|
|
|
|
|
|
|
|
|
|
- **容器化**: Docker + Docker Compose
|
|
|
|
|
- **版本控制**: Git
|
|
|
|
|
- **CI/CD**: Drone
|
|
|
|
|
- **存储**: MinIO
|
|
|
|
|
- **文档**: MkDocs Material
|
|
|
|
|
|
|
|
|
|
## 部署架构
|
|
|
|
|
|
|
|
|
|
所有服务使用 Docker Compose 部署,便于管理和维护。
|
|
|
|
|
|
|
|
|
|
## 数据持久化
|
|
|
|
|
|
|
|
|
|
所有服务的数据都存储在 Docker 卷中,确保数据持久化。
|