diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 2c295f7b133802d76cd90072d0ae54574688f131..c58ea53965e0552a26efff1cb3a12b836c0cd332 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,11 +4,22 @@ stages:
 
 build:
   stage: build
-  image: quay.io/podman/stable
+  image:
+    name: gcr.io/kaniko-project/executor:debug
+    entrypoint: [""]
+  before_script:
+    - echo "{\"auths\":{\"${HARBOR_HOST}\":{\"auth\":\"$(echo -n ${HARBOR_USERNAME}:${HARBOR_PASSWORD} | base64 -w 0)\"}}}" > /kaniko/.docker/config.json
   script:
-    - echo "${HARBOR_PASSWORD}" | podman login -u "${HARBOR_USERNAME}" --password-stdin "${HARBOR_HOST}"
-    - podman build -t "${HARBOR_HOST}/${HARBOR_PROJECT}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG}" "${CI_PROJECT_DIR}"
-    - podman push "${HARBOR_HOST}/${HARBOR_PROJECT}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG}"
+    - >-
+      /kaniko/executor
+      --context "${CI_PROJECT_DIR}"
+      --dockerfile "${CI_PROJECT_DIR}/Dockerfile"
+      --destination "${HARBOR_HOST}/${HARBOR_PROJECT}/${CI_PROJECT_NAME}:${CI_COMMIT_TAG}"
+      --single-snapshot
+      --snapshot-mode=redo
+      --use-new-run
+      --cache=true
+      --compressed-caching=true
 
 deploy:
   stage: deploy