diff --git a/ci/Jenkinsfile b/ci/Jenkinsfile
index 9cb34cef076cb7c4200c8aff9e014a24e038e752..ca23970653083a63e44a2306b504b8eb815d326e 100644
--- a/ci/Jenkinsfile
+++ b/ci/Jenkinsfile
@@ -31,13 +31,7 @@ pipeline {
   stages {
     stage ("libcapsule") {
       agent {
-        docker {
-          label 'docker-slave'
-          image "docker-registry.internal.collabora.com/steamos/package-builder:stretch"
-          registryUrl 'https://docker-registry.internal.collabora.com'
-          registryCredentialsId 'ccu-docker-internal-collabora-com'
-          alwaysPull true
-        }
+        label 'docker-slave'
       }
       environment {
         HOME="${env.WORKSPACE}"
@@ -55,15 +49,29 @@ pipeline {
           extensions: [[$class: 'PruneStaleBranch'], [$class: 'RelativeTargetDirectory', relativeTargetDir: 'libcapsule']],
           userRemoteConfigs: [[name: 'origin', url: "git@gitlab.collabora.com:vivek/libcapsule", credentialsId: 'GITLABSSHKEY']]
         ]
-        sh '''
-        set -e
-        mkdir -p debs
-        echo "jenkins::$(id -u):$(id -g):Jenkins:$(pwd):/bin/sh" > passwd
-        export NSS_WRAPPER_PASSWD=$(pwd)/passwd
-        export NSS_WRAPPER_GROUP=/dev/null
-        export LD_PRELOAD=libnss_wrapper.so
-        ( cd libcapsule; deb-build-snapshot -d ../debs --no-check -s -u localhost )
-        '''
+        script {
+          if (env.CI_DOCKER_REGISTRY_CRED == '') {
+            dockerRegistryCred = null;
+          }
+          else {
+            dockerRegistryCred = env.CI_DOCKER_REGISTRY_CRED;
+          }
+
+          docker.withRegistry("https://${env.CI_DOCKER_REGISTRY}", dockerRegistryCred) {
+            docker.image("${env.CI_DOCKER_REGISTRY}/steamos/package-builder:stretch").inside('') {
+              sh '''
+              set -e
+              mkdir -p debs
+              echo "jenkins::$(id -u):$(id -g):Jenkins:$(pwd):/bin/sh" > passwd
+              export NSS_WRAPPER_PASSWD=$(pwd)/passwd
+              export NSS_WRAPPER_GROUP=/dev/null
+              export LD_PRELOAD=libnss_wrapper.so
+              ( cd libcapsule; deb-build-snapshot -d ../debs --no-check -s -u localhost )
+              '''
+            }
+          }
+        }
+
         stash name: 'debs', includes: 'debs/**'
       }
       post {
@@ -75,13 +83,7 @@ pipeline {
 
     stage ("pressure-vessel") {
       agent {
-        docker {
-          label 'docker-slave'
-          image "docker-registry.internal.collabora.com/steamos/package-builder:jessie"
-          registryUrl 'https://docker-registry.internal.collabora.com'
-          registryCredentialsId 'ccu-docker-internal-collabora-com'
-          alwaysPull true
-        }
+        label 'docker-slave'
       }
       environment {
         HOME="${env.WORKSPACE}"
@@ -95,15 +97,29 @@ pipeline {
         '''
         checkoutCollaboraGitlab('steam/pressure-vessel', 'master', 'src')
         unstash 'debs'
-        sh '''
-        set -e
-        echo "jenkins::$(id -u):$(id -g):Jenkins:$(pwd):/bin/sh" > passwd
-        export NSS_WRAPPER_PASSWD=$(pwd)/passwd
-        export NSS_WRAPPER_GROUP=/dev/null
-        export LD_PRELOAD=libnss_wrapper.so
-        mv debs/*.dsc debs/*.tar.* src/
-        ( cd src; make sysroot=/ )
-        '''
+
+        script {
+          if (env.CI_DOCKER_REGISTRY_CRED == '') {
+            dockerRegistryCred = null;
+          }
+          else {
+            dockerRegistryCred = env.CI_DOCKER_REGISTRY_CRED;
+          }
+
+          docker.withRegistry("https://${env.CI_DOCKER_REGISTRY}", dockerRegistryCred) {
+            docker.image("${env.CI_DOCKER_REGISTRY}/steamos/package-builder:jessie").inside('') {
+            sh '''
+            set -e
+            echo "jenkins::$(id -u):$(id -g):Jenkins:$(pwd):/bin/sh" > passwd
+            export NSS_WRAPPER_PASSWD=$(pwd)/passwd
+            export NSS_WRAPPER_GROUP=/dev/null
+            export LD_PRELOAD=libnss_wrapper.so
+            mv debs/*.dsc debs/*.tar.* src/
+            ( cd src; make sysroot=/ )
+            '''
+          }
+        }
+
         archiveArtifacts 'src/pressure-vessel-*-bin.tar.gz'
         archiveArtifacts 'src/pressure-vessel-*-bin+src.tar.gz'
       }