diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..2a23beb4487c6b74dfe05f1bec0da270e02119e2
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,38 @@
+variables:
+  VERSION: 0.0.1
+
+stages:
+  - check
+  - docker
+
+Check json files:
+  stage: check
+  except:
+    - main
+  image: python:3.9.17-alpine3.18
+  script:
+    - /bin/sh -c "python -mjson.tool *.json"
+  
+
+Build docker image:
+  only: 
+    - main
+  stage: docker
+  image: docker/compose:1.29.2
+  allow_failure: false
+  tags: [ dind ]
+  variables:
+    IMG_LATEST: $CI_REGISTRY_IMAGE:latest
+    IMG_VERSION: $CI_REGISTRY_IMAGE:$VERSION
+    DOCKER_TLS_CERTDIR: ""
+    DOCKER_HOST: tcp://docker:2375
+  services:
+    - name: docker:dind
+      command: [ dockerd, '-H', 'tcp://0.0.0.0:2375' ]
+  before_script:
+    - echo -n $CI_REGISTRY_PASSWORD | docker login -u $CI_REGISTRY_USER --password-stdin $CI_REGISTRY
+  script:
+    - docker build --tag $IMG_VERSION .
+    - docker push $IMG_VERSION
+    - docker tag $IMG_VERSION $IMG_LATEST
+    - docker push $IMG_LATEST