Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save darinpope/83a755af85d769590a2647a532e8fa6d to your computer and use it in GitHub Desktop.
Save darinpope/83a755af85d769590a2647a532e8fa6d to your computer and use it in GitHub Desktop.

This is a Dockerfile and docker-compose.yml to run a custom CloudBees Core Traditional Client Master that has the /var/jenkins_support as an exposed volume

version: "2.4"
services:
cm:
container_name: cm
image: darinpope/cloudbees-core-cm:2.176.4.3
restart: unless-stopped
ports:
- "8080:8080"
- "50000:50000"
ulimits:
core:
soft: -1
hard: -1
fsize:
soft: -1
hard: -1
nofile:
soft: 4096
hard: 8192
nproc:
soft: 30654
hard: 30654
healthcheck:
test: curl -sS http://localhost:8080/ha/health-check | grep "Running as primary" || exit 1
interval: 10s
timeout: 2s
retries: 3
start_period: 60s
mem_limit: 6144m
mem_reservation: 4300m
environment:
JAVA_OPTS: "
-Xms4300m
-Xmx4300m
-Dcb.BeekeeperProp.noFullUpgrade=true
-Dcom.cloudbees.jenkins.ha=false
-Dhudson.TcpSlaveAgentListener.hostName=<hostname of the machine here>
-Dhudson.TcpSlaveAgentListener.port=50000
-Djenkins.model.Jenkins.logStartupPerformance=true
-Dhudson.udp=-1
-Dhudson.DNSMultiCast.disabled=true
-Dorg.apache.commons.jelly.tags.fmt.timeZone=America/New_York
-Duser.timezone=America/New_York
-Djava.awt.headless=true
-XX:+AlwaysPreTouch
-XX:+HeapDumpOnOutOfMemoryError
-XX:HeapDumpPath=/var/jenkins_support
-XX:ErrorFile=/var/jenkins_support/hs_err_%p.log
-XX:+UseG1GC
-XX:+UseStringDeduplication
-XX:+ParallelRefProcEnabled
-XX:+DisableExplicitGC
-XX:+UnlockDiagnosticVMOptions
-XX:+UnlockExperimentalVMOptions
-verbose:gc
-Xloggc:/var/jenkins_support/gc-%t.log
-XX:NumberOfGCLogFiles=2
-XX:+UseGCLogFileRotation
-XX:GCLogFileSize=100m
-XX:+PrintGC
-XX:+PrintGCDateStamps
-XX:+PrintGCDetails
-XX:+PrintHeapAtGC
-XX:+PrintGCCause
-XX:+PrintTenuringDistribution
-XX:+PrintReferenceGC
-XX:+PrintAdaptiveSizePolicy
-XX:+LogVMOutput
-XX:LogFile=/var/jenkins_support/jvm.log
"
volumes:
- ./data/cm/jenkins_home:/var/jenkins_home
- ./data/cm/jenkins_support:/var/jenkins_support
FROM cloudbees/cloudbees-core-cm:2.176.4.3
USER root
VOLUME /var/jenkins_support
RUN chown -R jenkins:jenkins /var/jenkins_support
USER jenkins
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment