Files
bruno 8c3881bf89 🚀 feat: 企业级CI/CD基础设施完整部署方案
✨ 新功能:
- 一键自动化部署脚本 (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
2025-08-23 22:11:50 +08:00

33 lines
697 B
Docker

FROM jenkins/jenkins:lts-jdk21
# 切换到root用户安装插件和配置
USER root
# 安装系统依赖
RUN apt-get update && apt-get install -y \
curl \
wget \
git \
&& rm -rf /var/lib/apt/lists/*
# 切换回jenkins用户
USER jenkins
# 跳过初始设置向导
ENV JAVA_OPTS="-Djenkins.install.runSetupWizard=false"
# 复制插件列表
COPY plugins.txt /usr/share/jenkins/ref/plugins.txt
# 安装插件
RUN jenkins-plugin-cli --plugin-file /usr/share/jenkins/ref/plugins.txt
# 复制初始化脚本
COPY init.groovy /usr/share/jenkins/ref/init.groovy.d/init.groovy
# 设置环境变量
ENV JENKINS_USER=admin
ENV JENKINS_PASS=admin123
# 暴露端口
EXPOSE 8080 50000