version: '3.8' services: jenkins: build: context: . dockerfile: Dockerfile container_name: jenkins-custom restart: unless-stopped ports: - "15008:8080" - "50000:50000" volumes: - jenkins_home:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock - ./jenkins_data:/var/jenkins_home/workspace environment: - JAVA_OPTS=-Djenkins.install.runSetupWizard=false -Xmx2048m - JENKINS_OPTS=--httpPort=8080 networks: - jenkins-network # SonarQube服务(如果需要本地运行) sonarqube: image: sonarqube:community container_name: sonarqube-custom restart: unless-stopped ports: - "15010:9000" environment: - SONAR_ES_BOOTSTRAP_CHECKS_DISABLE=true volumes: - sonarqube_data:/opt/sonarqube/data - sonarqube_extensions:/opt/sonarqube/extensions - sonarqube_logs:/opt/sonarqube/logs networks: - jenkins-network volumes: jenkins_home: sonarqube_data: sonarqube_extensions: sonarqube_logs: networks: jenkins-network: driver: bridge