diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b6509b3e485ae8ebf9299e99c49cdb7ffb135767..fb87697f671f4a57be8c33bded1d536272f35077 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -7,8 +7,7 @@ test:
   tags:
     - private
   script:
-    - make test
-    - cat target/site/jacoco/index.html
+    - make ci_test
 
 cleanup:
   stage: cleanup
@@ -16,5 +15,4 @@ cleanup:
   tags:
     - private
   script:
-    - sudo /bin/chown -R gitlab-runner target
-    - make clean_test
\ No newline at end of file
+    - make ci_clean_test
\ No newline at end of file
diff --git a/Dockerfile b/Dockerfile
index e72d32499bb1e9ff23ecffafac5ba9ffbc665fb6..2b68048c39ea82191298ea974b5c8b9ca313287a 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -9,5 +9,7 @@ RUN sass --version
 COPY wait-for-it.sh /
 COPY wad.sh /
 
+COPY . /app
+
 RUN chmod 777 /wad.sh
 RUN chmod 777 /wait-for-it.sh
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 15e5d779070b7286ce17437e921e102985df49b1..c77377b4f27c8e9d274604b1f0e03b56be79e7d0 100644
--- a/Makefile
+++ b/Makefile
@@ -1,5 +1,20 @@
 all: run
 
+_run_mvn_tests:
+	@mvn clean test -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
+
+_cat_jacoco_:
+	@cat /app/target/site/jacoco/index.html
+
+_ci_test: _run_mvn_tests _cat_jacoco_
+
+ci_test:
+	@docker-compose -f docker-compose.test.yml build
+	@docker-compose -f docker-compose.test.yml run ci_test_builder make _ci_test
+
+ci_clean_test:
+	@docker-compose -f docker-compose.test.yml down
+
 run:
 	@docker-compose -f docker-compose.yml up -d
 
diff --git a/docker-compose.test.yml b/docker-compose.test.yml
index c2d587df4489a93e0573e97b4063ffbd231466f2..0e1e30b892c76f654a2596fb8415f891f05eedfb 100644
--- a/docker-compose.test.yml
+++ b/docker-compose.test.yml
@@ -5,18 +5,22 @@ networks:
     name: 'tcn2'
 
 services:
-  test_builder:
+
+  ci_test_builder: &app
     build: .
     restart: always
     container_name: 'test_corporate_builder2'
     depends_on:
       - test_db
     working_dir: '/app'
-    volumes:
-      - .:/app
     networks:
       - test_corporate_network
 
+  test_builder:
+    <<: *app
+    volumes:
+      - .:/app
+
   test_db:
     image: 'postgres:10-alpine'
     container_name: 'test_corporate_db2'