diff --git a/docker-compose.yml b/docker-compose.yml
index c24d9a2feab230392eda1a3450ad5ffc69c240bf..aecc11bae8b9806dc184f8688393bb91749faf65 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,7 +1,25 @@
 version: '3'
 
 services:
+  traefik:
+    command:
+      - "--api.insecure=true"
+      - "--providers.docker=true"
+      - "--providers.docker.exposedbydefault=false"
+      - "--entrypoints.nopaque.address=:5000"
+    image: traefik:2.0
+    ports:
+      - 5000:5000
+      - 9090:8080
+    volumes:
+      - /var/run/docker.sock:/var/run/docker.sock:ro
   web:
+    ports:
+      - "5000"
+    labels:
+      - "traefik.enable=true"
+      - "traefik.http.routers.nopaque.entrypoints=nopaque"
+      - "traefik.http.routers.nopaque.rule=Host(`nopaque.localhost`)"
     depends_on:
       - db
       - redis
@@ -9,8 +27,6 @@ services:
       - db.env
       - web.env
     image: gitlab.ub.uni-bielefeld.de:4567/sfb1288inf/opaque:development
-    ports:
-      - 5000:5000
     volumes:
       - /mnt/nopaque:/mnt/nopaque
       - ./app:/home/nopaque/app