一个基于 Spring Cloud 的迷你 DevOps 平台,采用多模块后端 + 前端分离架构。
devops-common:公共模块devops-gateway:网关服务devops-auth-service:认证服务devops-work-service:工作台/工作项服务devops-code-service:代码相关服务devops-release-service:发布服务devops-pipeline-service:流水线服务devops-runner-service:任务执行服务devops-frontend:前端应用(Vite + React + TypeScript)scripts/:镜像构建、推送、容器启动脚本
- Java 21
- Spring Boot 3.5.x
- Spring Cloud 2025.x
- Spring Cloud Alibaba 2025.x
- MyBatis-Plus
- PostgreSQL
- Flyway
- React 19 + Vite + TypeScript
- JDK 21
- Maven 3.9+
- Node.js 20+
- pnpm 9+
- Docker / Docker Compose
10000 - common 通用错误
20000 - auth-service
30000 - work-service
40000 - code-service
50000 - release-service
70000 - pipeline-service
73000 - runner
74000 - credential
在项目根目录执行:
docker compose up -d postgres默认配置:
- Host:
127.0.0.1 - Port:
5432 - User:
postgresql - Password:
postgresql - Database:
mini_devops_work
在项目根目录执行:
mvn clean package如需跳过测试:
mvn clean package -DskipTestscd devops-frontend
pnpm install
pnpm dev项目提供了常用脚本(位于 scripts/):
bash scripts/build-images.sh 1.0.0bash scripts/push-images.sh 1.0.0可通过环境变量覆盖默认镜像仓库:
REGISTRY(默认192.168.199.107:8812)PROJECT(默认mini-devops)
示例:
REGISTRY=your.registry:5000 PROJECT=mini-devops bash scripts/push-images.sh 1.0.0bash scripts/run-containers.sh 1.0.0可通过环境变量覆盖:
NACOS_SERVER_ADDR(默认192.168.199.107:8848)SPRING_PROFILES_ACTIVE(默认dev)
示例:
NACOS_SERVER_ADDR=127.0.0.1:8848 SPRING_PROFILES_ACTIVE=dev bash scripts/run-containers.sh 1.0.0- Java 版本不匹配
请确认本地 java -version 为 21。
- 前端依赖安装慢
可配置国内镜像源后执行 pnpm install。
- Docker 运行失败
请确认 Docker 已启动,并且本机端口(80、9000、9001、9010、9020、9030)未被占用。
- 根目录
Dockerfile用于构建各后端服务镜像(通过JAR_FILE构建参数指定具体模块产物)。 devops-frontend/Dockerfile用于前端镜像构建。