pipeline { agent { docker { image 'node:16-alpine' // Use an image with Node.js and Docker installed args '-u root -v /var/run/docker.sock:/var/run/docker.sock' // Mount Docker socket } } environment { REGISTRY = "docker-registry.service.consul" IMAGE_NAME = "efstajas/homepage" } stages { stage('Docker Build') { steps { script { dockerImage = docker.build("$IMAGE_NAME") } } } stage('Docker Publish') { steps { script { docker.withRegistry("http://$REGISTRY:4124") { dockerImage.push("latest") } } } } } }