diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f1d1b9040e478393a7dbc2a1b676ab19fd17d6b9..5031262a344bbf04e34a84eb7a13f3d9b22fa884 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,10 +11,16 @@ services:
 before_script:
   - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
 
-build:
+build_app:
   stage: build
   script:
-    - docker build -t $IMAGE_TAG_APP .
-    - docker build -t $IMAGE_TAG_NGINX . -f Dockerfile.nginx
+    - docker pull $CI_REGISTRY_IMAGE:master || true
+    - docker build --cache-from $CI_REGISTRY_IMAGE:master -t $IMAGE_TAG_APP .
     - docker push $IMAGE_TAG_APP
+
+build_nginx:
+  stage: build
+  script:
+    - docker pull $CI_REGISTRY_IMAGE:master-nginx || true
+    - docker build --cache-from $CI_REGISTRY_IMAGE:master-nginx -t $IMAGE_TAG_NGINX . -f Dockerfile.nginx
     - docker push $IMAGE_TAG_NGINX