✨ 新功能: - 一键自动化部署脚本 (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
34 lines
909 B
YAML
34 lines
909 B
YAML
version: '3.8'
|
|
|
|
services:
|
|
jenkins:
|
|
image: jenkins/jenkins:lts-jdk21
|
|
container_name: jenkins-simple
|
|
restart: unless-stopped
|
|
ports:
|
|
- "38080:8080"
|
|
- "35000:50000"
|
|
volumes:
|
|
- jenkins-data:/var/jenkins_home
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- ./jenkins/casc:/var/jenkins_home/casc_configs:ro
|
|
- ./jenkins/plugins.txt:/usr/share/jenkins/ref/plugins.txt:ro
|
|
- ./jenkins/init-scripts:/usr/share/jenkins/ref/init.groovy.d:ro
|
|
environment:
|
|
- JENKINS_OPTS=--httpPort=8080
|
|
- JAVA_OPTS=-Xmx2g -Xms1g -Djenkins.install.runSetupWizard=false
|
|
- CASC_JENKINS_CONFIG=/var/jenkins_home/casc_configs
|
|
- JENKINS_ADMIN_ID=admin
|
|
- JENKINS_ADMIN_PASSWORD=admin123
|
|
- TZ=Asia/Shanghai
|
|
user: root
|
|
networks:
|
|
- cicd-network
|
|
|
|
networks:
|
|
cicd-network:
|
|
external: true
|
|
|
|
volumes:
|
|
jenkins-data:
|
|
driver: local |