diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 78b7247c18f67eb9df4697d9a7b046a8af4f003b..37abd5d44064f0300538a732b03ad00cef959b17 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,9 +1,4 @@
-image: quay.io/buildah/stable:latest
-
 variables:
-  STORAGE_DRIVER: vfs
-  BUILDAH_FORMAT: docker
-  BUILDAH_ISOLATION: chroot
   GIT_SUBMODULE_STRATEGY: recursive
 
 stages:
@@ -12,13 +7,22 @@ stages:
 
 build docker image:
   stage: build
-  script:
-    - buildah bud -t teckids.org:latest
   interruptible: true
-  retry: 1
+  image:
+    name: gcr.io/kaniko-project/executor:debug
+    entrypoint: [""]
+  script:
+    - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" >/kaniko/.docker/config.json
+    - /kaniko/executor
+       --context $CI_PROJECT_DIR
+       --dockerfile $CI_PROJECT_DIR/Dockerfile
+       --destination $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_NAME
+       --cache=true
+       --cleanup
 
 build pages:
   stage: build
+  image: alpine:latest
   before_script:
   - apk add --update-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/community/ zola
   - apk add yarn
@@ -29,8 +33,6 @@ build pages:
   artifacts:
     paths:
     - public/
-  only:
-  - master
 
 push docker image:
   stage: deploy