diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000000000000000000000000000000000000..60b028c14dcd0f9ee32ee86081548fb349c31cd3
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1,2 @@
+.git
+.gitignore
\ No newline at end of file
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..403852da3433c1b82228bb9bd0b133ce4d586af4
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,18 @@
+build:
+  stage: build
+  tags:
+    - docker-builder
+  image: docker:latest
+  variables:
+    DOCKER_BUILDKIT: 1
+    GIT_SUBMODULE_STRATEGY: recursive
+    GIT_SUBMODULE_DEPTH: 1
+    GIT_SUBMODULE_UPDATE_FLAGS: --jobs 4
+  before_script:
+    - docker info
+    - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
+    - docker pull $CI_REGISTRY_IMAGE:latest || true
+  script:
+    - docker build --tag $CI_REGISTRY_IMAGE:latest  .
+    - docker push $CI_REGISTRY_IMAGE:latest
+