diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d77d91f17284c753c9087de78b840213765da43e..91b11e8bd174a1262d0cc70fa6dc4da077152d6e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -11,11 +11,14 @@ stages:
   - deploy
 
 test_api:
+  services:
+    - postgres:9.4
   stage: test
   image: funkwhale/funkwhale:base
   variables:
     PIP_CACHE_DIR: "$CI_PROJECT_DIR/pip-cache"
-    DATABASE_URL: "sqlite://"
+    DATABASE_URL: "postgresql://postgres@postgres/postgres"
+
   before_script:
     - python3 -m venv --copies virtualenv
     - source virtualenv/bin/activate
diff --git a/api/config/settings/test.py b/api/config/settings/test.py
index db7b21415c6583a17472a9b84a61d9793e6cc0fa..a0b6b2503a1762295c960cae50c06c65c50a4d76 100644
--- a/api/config/settings/test.py
+++ b/api/config/settings/test.py
@@ -1,11 +1,5 @@
 from .common import *  # noqa
 SECRET_KEY = env("DJANGO_SECRET_KEY", default='test')
-DATABASES = {
-    'default': {
-        'ENGINE': 'django.db.backends.sqlite3',
-        'NAME': ':memory:',
-    }
-}
 
 # Mail settings
 # ------------------------------------------------------------------------------
diff --git a/api/test.yml b/api/test.yml
index bd3a98e457de5cf7610caf1ac5cef4dfd520715f..c59ce45bbbbaf2357a2b50782bc004f51b584cce 100644
--- a/api/test.yml
+++ b/api/test.yml
@@ -1,8 +1,15 @@
-test:
-  dockerfile: docker/Dockerfile.test
-  build: .
-  command: pytest
-  volumes:
-    - .:/app
-  environment:
-    - "DATABASE_URL=sqlite://"
+version: '2'
+services:
+  test:
+    build:
+      dockerfile: docker/Dockerfile.test
+      context: .
+    command: pytest
+    depends_on:
+      - postgres
+    volumes:
+      - .:/app
+    environment:
+      - "DATABASE_URL=postgresql://postgres@postgres/postgres"
+  postgres:
+    image: postgres