Jenkins agent supporting Docker build
10K+
This Jenkins Agent image connects to the Jenkins master and supports docker build using host's docker daemon. For more information, see here.
Note:
/home/jenkins/agentand/home/jenkins/.jenkinsare exposed as volumes.
Configure Jenkins master by adding a worker node to Jenkins with the following example parameters. Refer to guide here for screenshots.
Note: By default JNLP connects using port 50000 and has to be exposed.
worker1/var/jenkins_homedocker (optional label to denote worker supports docker builds. See here.)Launch agent by connecting it to the masterlatestThe following dependencies are installed
ubuntuBuilt using ubuntu base image with opiniated set of build tools.
Reference:
baseContains no dependencies.
If Jenkins master container is on existing docker network e.g. jenkins-docker_default (Default docker-compose network),
# Assuming jenkins is reacheable from `jenkins-docker_default` network at http://jenkins:8080 with above example parameters.
# Linux
docker run -d --name=jenkins-agent --network jenkins-docker_default \
--group-add `stat -c %g /var/run/docker.sock` \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(pwd)/data/worker:/var/jenkins_home \
deskoh/jenkins-agent-docker -url http://jenkins:8080 <secret> worker1
# Windows
docker run -d --name=jenkins-agent --network jenkins-docker_default ^
--group-add 0 ^
-v /var/run/docker.sock:/var/run/docker.sock ^
-v %cd%/data/worker:/var/jenkins_home ^
deskoh/jenkins-agent-docker -url http://jenkins:8080 <secret> worker1
# Assuming jenkins is reacheable from host at http://jenkins:8080 with above example parameters.
# Linux
docker run -d --name=jenkins-agent \
-v /var/run/docker.sock:/var/run/docker.sock \
-v $(pwd)/data/worker:/var/jenkins_home \
deskoh/jenkins-agent-docker -url http://jenkins:8080 <secret> worker1
# Windows
docker run -d --name=jenkins-agent ^
-v /var/run/docker.sock:/var/run/docker.sock ^
-v %cd%/data/worker:/var/jenkins_home ^
deskoh/jenkins-agent-docker -url http://jenkins:8080 <secret> worker1
# Creates a bridge network `jenkins-net`
docker network create --driver bridge jenkins-net
# Connects Jenkins master named `jenkins` to `jenkins-net`
docker network connect jenkins-net jenkins
docker run --network jenkins-net \
-v $(pwd)/data/worker:<remote root dir>
deskoh/jenkins-agent-docker -url http://jenkins:8080 <secret> <worker name>
Content type
Image
Digest
Size
682.9 MB
Last updated
over 5 years ago
docker pull deskoh/jenkins-agent-docker