diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 58a77ab02c1f6c525504f1f25e97001bbe9b9ac7..f524d0b9082fd845da9a1a3f8344efded4be7f3c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,12 +7,25 @@ variables:
   DOCKER_HOST: tcp://docker:2375/
   DOCKER_TLS_CERTDIR: ""
 
+stages:
+  - build
+  - deploy
+
+build:
+  stage: build
+  script:
+    - echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY
+    - docker build -t $CI_REGISTRY/m24024310/devops_mohi/php_app:latest ./app
+    - docker tag $CI_REGISTRY/m24024310/devops_mohi/php_app:latest $CI_REGISTRY/m24024310/devops_mohi/php_app:$CI_COMMIT_SHORT_SHA
+    - docker logout
+
 deploy:
   stage: deploy
   script:
     - echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" --password-stdin $CI_REGISTRY
-    - docker build -t $CI_REGISTRY/m24024310/devops_mohi/php_app:latest ./app
     - docker push $CI_REGISTRY/m24024310/devops_mohi/php_app:latest
+    - docker push $CI_REGISTRY/m24024310/devops_mohi/php_app:$CI_COMMIT_SHORT_SHA
+    - docker logout
   only:
     - main