✨ 新功能: - 一键自动化部署脚本 (build-infra.sh) - 统一端口配置 (3开头端口,避免冲突) - 多平台Docker构建支持 (AMD64 + ARM64) - Jenkins Configuration as Code (零手动配置) - 完整的服务验证和健康检查 🏗️ 核心组件: - Jenkins LTS + JDK21 (端口38080) - Gitea 1.21 (端口33000, SSH: 32222) - Docker Registry + UI (端口35001/35002) - 统一cicd-network网络 📋 管理工具: - 自动化部署和验证脚本 - 健康检查和日志管理工具 - 完整的文档和故障排查指南 🎯 已验证功能: - 所有服务正常启动和运行 - API和Web界面完全可访问 - 多平台构建环境就绪 - 完整的CI/CD流水线支持 适用环境: Mac Studio M2 + Docker Desktop
3.7 KiB
3.7 KiB
CI/CD 系统问题排查指南
常见问题及解决方案
1. Gitea Webhook 触发失败
症状
- Webhook 显示发送失败
- CI/CD 流水线没有被触发
- Gitea 界面显示 Webhook 发送错误
排查步骤
- 检查 Webhook 配置
# 检查 Gitea 日志
tail -f /var/log/gitea/gitea.log
# 检查 Webhook URL 可访问性
curl -v http://drone-server:8000/hook
- 检查网络连接
# 检查 Drone 服务是否运行
orb ps | grep drone
# 检查网络连通性
ping drone-server
- 检查认证配置
- 确认 Webhook Secret 是否正确
- 验证 Gitea 和 Drone 的集成配置
2. Drone CI 构建失败
症状
- 构建任务启动失败
- 构建过程中断
- 构建完成但结果失败
排查步骤
- 检查 Drone 日志
# 查看 Drone 服务日志
orb logs drone-server
orb logs drone-runner
- 检查构建环境
# 检查 Docker 状态
orb docker ps
orb docker info
- 检查资源使用
# 检查系统资源
top
df -h
3. Registry 推送失败
症状
- 镜像推送失败
- 认证错误
- 存储空间不足
排查步骤
- 检查认证配置
# 测试 Registry 认证
docker login localhost:5000
# 检查认证配置
cat /Users/brunogao/work/infra/docker/registry/config.yml
- 检查存储状态
# 检查存储空间
du -sh /Users/brunogao/work/infra/docker/registry/data
# 检查 Registry 日志
orb logs registry
4. OrbStack 相关问题
症状
- 容器启动失败
- 网络连接问题
- 资源限制问题
排查步骤
- 检查 OrbStack 状态
# 检查整体状态
orb ps
# 检查系统信息
orb system info
- 检查网络配置
# 检查网络列表
orb network ls
# 检查网络连接
orb network inspect bridge
- 检查资源使用
# 检查容器资源使用
orb stats
日志收集
1. 服务日志
# Gitea 日志
orb logs gitea
# Drone 日志
orb logs drone-server
orb logs drone-runner
# Registry 日志
orb logs registry
2. 系统日志
# 系统日志
tail -f /var/log/system.log
# OrbStack 日志
orb system logs
常用调试命令
1. 服务健康检查
# 检查 Gitea
curl -I http://localhost:3000
# 检查 Drone
curl -I http://localhost:8000
# 检查 Registry
curl -I http://localhost:5000/v2/
2. 网络调试
# 检查端口占用
lsof -i :3000
lsof -i :8000
lsof -i :5000
# 检查网络连接
netstat -an | grep LISTEN
3. 容器调试
# 进入容器
orb exec <container_name> sh
# 查看容器详情
orb inspect <container_name>
性能优化
1. 资源限制调整
- 调整 OrbStack 资源限制
- 优化容器资源分配
- 监控资源使用情况
2. 网络优化
- 使用本地网络
- 优化 DNS 配置
- 减少网络延迟
3. 存储优化
- 定期清理旧数据
- 优化存储配置
- 监控存储使用情况
安全检查
1. 访问控制
- 检查认证配置
- 验证权限设置
- 审计访问日志
2. 网络安全
- 检查防火墙规则
- 验证 SSL/TLS 配置
- 监控异常访问
备份和恢复
1. 数据备份
# 备份 Gitea 数据
orb backup gitea
# 备份 Registry 数据
tar -czf registry_backup.tar.gz /Users/brunogao/work/infra/docker/registry/data
2. 配置备份
# 备份配置文件
cp -r /Users/brunogao/work/infra/cicd/drone/config /backup/drone_config
cp -r /Users/brunogao/work/infra/docker/registry/config /backup/registry_config
更新和升级
1. 服务更新
# 更新 OrbStack
orb update
# 更新容器镜像
orb pull gitea
orb pull registry
2. 配置更新
- 备份旧配置
- 应用新配置
- 验证服务正常