feat: 添加 Jenkins CI/CD 配置和部署脚本
Some checks failed
Java CI with Maven / build (11) (push) Has been cancelled
Java CI with Maven / build (17) (push) Has been cancelled
Java CI with Maven / build (8) (push) Has been cancelled

- 添加 Jenkinsfile 支持智能增量构建
- 添加 Docker 多阶段构建模板
- 添加 Docker Compose 配置(连接 1Panel 中间件)
- 添加部署、回滚、清理脚本
- 添加环境变量配置模板
This commit is contained in:
lzh
2026-01-13 09:49:19 +08:00
parent 8ccfafe2bb
commit b3948df69b
9 changed files with 1233 additions and 0 deletions

126
.env.example Normal file
View File

@@ -0,0 +1,126 @@
# ============================================
# 环境变量配置文件
# 复制此文件为 .env 并根据实际环境修改
# ============================================
# ============ 通用配置 ============
COMPOSE_PROJECT_NAME=aiot-platform
TZ=Asia/Shanghai
# ============ Docker Registry ============
REGISTRY_HOST=localhost:5000
IMAGE_TAG=latest
# ============ 数据库配置 ============
# 1Panel 安装的 MySQL 配置
MYSQL_HOST=127.0.0.1
MYSQL_PORT=3306
MYSQL_ROOT_PASSWORD=your_1panel_mysql_root_password
MYSQL_DATABASE=aiot_platform
MYSQL_USER=aiot
MYSQL_PASSWORD=aiot_password
# MySQL 内存配置1Panel 管理,此处配置不生效)
MYSQL_MEMORY_LIMIT=2048m
MYSQL_MEMORY_RESERVATION=1024m
# ============ Redis 配置 ============
# 1Panel 安装的 Redis 配置
REDIS_HOST=127.0.0.1
REDIS_PORT=6379
REDIS_PASSWORD=your_1panel_redis_password
# Redis 内存配置1Panel 管理,此处配置不生效)
REDIS_MEMORY_LIMIT=512m
REDIS_MEMORY_RESERVATION=256m
# ============ Nacos 配置 ============
# 1Panel 安装的 Nacos 配置
NACOS_HOST=127.0.0.1
NACOS_PORT=8848
NACOS_NAMESPACE=aiot-platform
NACOS_USERNAME=nacos
NACOS_PASSWORD=nacos
# Nacos 内存配置1Panel 管理,此处配置不生效)
NACOS_MEMORY_LIMIT=1024m
NACOS_MEMORY_RESERVATION=768m
# ============ RocketMQ 配置 ============
# 1Panel 安装的 RocketMQ 配置
ROCKETMQ_NAMESRV_HOST=127.0.0.1
ROCKETMQ_NAMESRV_PORT=9876
ROCKETMQ_BROKER_HOST=127.0.0.1
# RocketMQ 内存配置1Panel 管理,此处配置不生效)
ROCKETMQ_NAMESRV_MEMORY_LIMIT=512m
ROCKETMQ_BROKER_MEMORY_LIMIT=1536m
# ============ 应用服务内存配置 ============
# 格式: 服务名_MEMORY_LIMIT / 服务名_JVM_XMS / 服务名_JVM_XMX
# API 网关(标准配置)
GATEWAY_MEMORY_LIMIT=768m
GATEWAY_JVM_XMS=512m
GATEWAY_JVM_XMX=768m
# 系统服务(标准配置)
SYSTEM_MEMORY_LIMIT=768m
SYSTEM_JVM_XMS=512m
SYSTEM_JVM_XMX=768m
# 基础设施服务(标准配置)
INFRA_MEMORY_LIMIT=768m
INFRA_JVM_XMS=512m
INFRA_JVM_XMX=768m
# IoT 业务服务(核心服务,较大内存)
IOT_SERVER_MEMORY_LIMIT=1024m
IOT_SERVER_JVM_XMS=768m
IOT_SERVER_JVM_XMX=1024m
# IoT 设备网关(核心服务,较大内存)
IOT_GATEWAY_MEMORY_LIMIT=1024m
IOT_GATEWAY_JVM_XMS=768m
IOT_GATEWAY_JVM_XMX=1024m
# 运维服务(轻量配置)
OPS_MEMORY_LIMIT=384m
OPS_JVM_XMS=256m
OPS_JVM_XMX=384m
# ============ JVM 通用参数 ============
JVM_COMMON_OPTS=-XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+HeapDumpOnOutOfMemoryError
# ============ Spring Boot 配置 ============
SPRING_PROFILES_ACTIVE=prod
# ============ 日志配置 ============
LOG_LEVEL=INFO
LOG_PATH=/app/logs
# ============ 端口映射 ============
GATEWAY_PORT=48080
SYSTEM_PORT=48081
INFRA_PORT=48082
IOT_SERVER_PORT=48083
IOT_GATEWAY_PORT=48084
OPS_PORT=48085
# ============ 健康检查配置 ============
HEALTH_CHECK_INTERVAL=30s
HEALTH_CHECK_TIMEOUT=10s
HEALTH_CHECK_RETRIES=3
HEALTH_CHECK_START_PERIOD=60s
# ============ 资源限制说明 ============
# 当前配置预计总内存占用:
# - 应用服务: ~4.5GB (Docker 容器)
# - 中间件: 由 1Panel 管理(不在 Docker Compose 中)
# - 总计: ~4.5GB (仅应用服务,为系统预留 11.5GB)
#
# 调整建议:
# 1. 核心服务IOT_SERVER, IOT_GATEWAY已配置较大内存 (1GB)
# 2. 如需增加某服务内存,修改对应的 MEMORY_LIMIT 和 JVM_XMX
# 3. 中间件内存配置请在 1Panel 面板中调整
# 4. 确保所有服务总内存不超过 14GB为系统预留至少 2GB