From c19245b5ba72f6f8d833adb14dac4c84c106768f Mon Sep 17 00:00:00 2001 From: Guillem Hernandez Sola Date: Mon, 2 Mar 2026 17:25:12 +0100 Subject: [PATCH] Jenkins file to build docker agents --- BuildJenkinsfileAgentAlpine | 52 +++++++++++++++++++++++++++++++++++++ BuildJenkinsfileAgentUbuntu | 52 +++++++++++++++++++++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 BuildJenkinsfileAgentAlpine create mode 100644 BuildJenkinsfileAgentUbuntu diff --git a/BuildJenkinsfileAgentAlpine b/BuildJenkinsfileAgentAlpine new file mode 100644 index 0000000..ff44904 --- /dev/null +++ b/BuildJenkinsfileAgentAlpine @@ -0,0 +1,52 @@ +// You need a valid credentials for Docker Hub +// You need https://plugins.jenkins.io/docker-workflow/ on your jenkins instance + +pipeline { + agent { + node { + label 'docker' //Agent needs to have Docker Engine installed + } + } + environment { + DOCKER_HUB_USER='guillemhs' + IMAGE_NAME="${DOCKER_HUB_USER}/jenkins-alpine-agent" + REGISTRY_CRED_ID='docker-credentials' + } + stages { + stage('Checkout') { + steps { + // Get some code from a GIT repository + git branch: 'main', url: 'https://git.agile611.com/Agile611/startusingjenkins.git' + } + } + stage('Docker Build') { + steps { + script{ + echo "Build image ..." + docker.build("${IMAGE_NAME}:${env.BUILD_NUMBER}","-f DockerfileAgentAlpine .") + } + } + } + stage('Docker Push') + { + steps{ + script{ + docker.withRegistry('',REGISTRY_CRED_ID){ + def app = docker.image("${IMAGE_NAME}:${env.BUILD_NUMBER}") + + echo "Pushing image to Docker Hub ..." + app.push("${env.BUILD_NUMBER}") + app.push("latest") + } + } + } + } + } + post{ + always{ + //cleanWs() + sh "docker rmi ${IMAGE_NAME}:${env.BUILD_NUMBER} || true" + sh "docker rmi ${IMAGE_NAME}:latest || true" + } + } +} \ No newline at end of file diff --git a/BuildJenkinsfileAgentUbuntu b/BuildJenkinsfileAgentUbuntu new file mode 100644 index 0000000..ee65ee1 --- /dev/null +++ b/BuildJenkinsfileAgentUbuntu @@ -0,0 +1,52 @@ +// You need a valid credentials for Docker Hub +// You need https://plugins.jenkins.io/docker-workflow/ on your jenkins instance + +pipeline { + agent { + node { + label 'docker' //Agent needs to have Docker Engine installed + } + } + environment { + DOCKER_HUB_USER='guillemhs' + IMAGE_NAME="${DOCKER_HUB_USER}/jenkins-ubuntu2404-agent" + REGISTRY_CRED_ID='docker-credentials' + } + stages { + stage('Checkout') { + steps { + // Get some code from a GIT repository + git branch: 'main', url: 'https://git.agile611.com/Agile611/startusingjenkins.git' + } + } + stage('Docker Build') { + steps { + script{ + echo "Build image ..." + docker.build("${IMAGE_NAME}:${env.BUILD_NUMBER}","-f DockerfileAgent2404 .") + } + } + } + stage('Docker Push') + { + steps{ + script{ + docker.withRegistry('',REGISTRY_CRED_ID){ + def app = docker.image("${IMAGE_NAME}:${env.BUILD_NUMBER}") + + echo "Pushing image to Docker Hub ..." + app.push("${env.BUILD_NUMBER}") + app.push("latest") + } + } + } + } + } + post{ + always{ + //cleanWs() + sh "docker rmi ${IMAGE_NAME}:${env.BUILD_NUMBER} || true" + sh "docker rmi ${IMAGE_NAME}:latest || true" + } + } +} \ No newline at end of file