diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0ce66324e1d562beb6d489d661463fd51d67a612..697de095467e5ab7cd6dd6cd063f3ce900c533f4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -16,6 +16,12 @@ stages:
   - build
   - deploy
 
+
+.docker-login: $docker-login
+  - i=0; while [ "$i" -lt 12 ]; do docker info && break; sleep 5; i=$(( i + 1 )) ; done
+  - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
+
+
 .build:
   stage: build
   image: docker:24
@@ -28,8 +34,7 @@ stages:
     MEILI_HOST: "http://localhost:7700"
     MEILI_API_KEY: MASTER_KEY
   before_script:
-    - i=0; while [ "$i" -lt 12 ]; do docker info && break; sleep 5; i=$(( i + 1 )) ; done
-    - docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
+    - *docker-login
   script:
     - >
       docker buildx build --pull -t "$CI_REGISTRY_IMAGE/$IMAGE_NAME:$CI_COMMIT_SHORT_SHA"