✨ 新功能: - 一键自动化部署脚本 (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
33 lines
697 B
Docker
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 |