diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b525f60c37fd7f6034b8def6c60cc130a2df023b..85db247a00daf28980b743a18e1262041b5d84d6 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,13 @@
 image: haskell:8.2
 
+# Change stacks global directory to be inside the project directory,
+# since we can only cache local dependencies.
+variables:
+  STACK_ROOT: "$CI_PROJECT_DIR/.stack-root"
+
+cache:
+  paths:
+    - .stack-root/
+
 test:
   script: stack --no-terminal --system-ghc --no-install-ghc build --test --haddock --no-haddock-deps