diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c4b8495224ad81ae2eebe81b0087319422da1969..36afe817b4f8601467b8872169f1b7b9daadd252 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -310,6 +310,31 @@ deploy-theodolite:
       when: manual
       allow_failure: true
 
+deploy-theodolite-kaniko:
+  stage: deploy
+  extends:
+    - .theodolite
+  needs:
+    - build-theodolite-jvm
+    - test-theodolite
+  image:
+    name: gcr.io/kaniko-project/executor:debug
+    entrypoint: [""]
+  script:
+    - DOCKER_TAG_NAME=$(echo $CI_COMMIT_REF_SLUG- | sed 's/^master-$//')
+    - mkdir -p /kaniko/.docker
+    - echo "{\"auths\":{\"$CR_HOST\":{\"username\":\"$CR_USER\",\"password\":\"$CR_PW\"}}}" > /kaniko/.docker/config.json
+    - /kaniko/executor --context $PWD/src/main/docker/ --dockerfile Dockerfile.jvm -d $CR_ORG/theodolite:${DOCKER_TAG_NAME}latest-kaniko
+  rules:
+    - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW && $CI_COMMIT_TAG"
+      when: always
+    - changes:
+      - theodolite/**/*
+      if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
+      when: always
+    - if: "$CR_HOST && $CR_ORG && $CR_USER && $CR_PW"
+      when: manual
+      allow_failure: true
 
 # Theodolite SLO Checker: Lag Trend