diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 910db1b7453d4150dac6e73c71cc3dcc10bf6f66..9896d745d3dc682d6098b3007dab7c8e772f7fdb 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -19,11 +19,14 @@ test:
 
 push:
   stage: push
-  image: docker:stable
+  image:
+    name: gcr.io/kaniko-project/executor:debug
+    entrypoint: [""]
   script:
-    - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
-    - docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME -t $CI_REGISTRY_IMAGE:latest .
-    - docker push $CI_REGISTRY_IMAGE
-    - docker rmi $CI_REGISTRY_IMAGE
+    - mkdir -p /kaniko/.docker
+    - echo "{\"auths\":{\"$HARBOR_REGISTRY\":{\"username\":\"$HARBOR_USER\",\"password\":\"$HARBOR_TOKEN\"}}}" > /kaniko/.docker/config.json
+    - /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $HARBOR_REPOSITORY/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME --destination $HARBOR_REPOSITORY/$CI_PROJECT_NAME:latest --build-arg IMAGE_VERSION=$CI_COMMIT_REF_NAME --build-arg IMAGE_NAME=$CI_PROJECT_NAME
   tags:
-    - iam-public
+    - asprunner
+  only:
+    - tags