diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index ca616cad215cb97c68fde4dc23ecfaeacf9a6400..c19faa16df9095e9121522e061664d4ead855306 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -33,6 +33,15 @@ test:
     - mkdir -p "${APT_CACHE_ARCHIVES}/partial"
     - apt update -qy
     - apt install -y apt-utils curl libgdal-dev
+    - export PGPASSWORD=$PASSWORD
+    - psql -c "CREATE DATABASE anthology;"
+    - psql -c "CREATE USER anthology_django WITH PASSWORD 'password';"
+    - psql -c "ALTER ROLE anthology_django SET client_encoding TO 'utf8';"
+    - psql -c "ALTER ROLE anthology_django SET default_transaction_isolation TO 'read committed';"
+    - psql -c "ALTER ROLE anthology_django SET timezone TO 'UTC-4';"
+    - psql -c "ALTER USER anthology_django CREATEDB;"
+    - psql -c "GRANT ALL PRIVILEGES ON DATABASE anthology TO anthology_django;"
+    - psql -c "CREATE EXTENSION postgis;"
     # Install uv, see https://docs.astral.sh/uv/#getting-started
     - curl -LsSf https://astral.sh/uv/install.sh | sh
     # Put uv in the path