diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml
new file mode 100644
index 0000000..c0bc4f7
--- /dev/null
+++ b/docker-compose-ci.yml
@@ -0,0 +1,61 @@
+---
+version: '2'
+services:
+
+  mysql:
+    image: mysql:5.5
+    env_file:
+      - env
+    environment:
+      - MYSQL_RANDOM_ROOT_PASSWORD=yes
+
+  powerdns:
+    build: powerdns/.
+    depends_on:
+      - mysql
+    ports:
+      - '53:53'
+    env_file:
+      - env
+    environment:
+      - MYSQL_HOST=mysql
+
+  webdns:
+    build: webdns/.
+    depends_on:
+      - mysql
+    ports:
+      - '3000:3000'
+    env_file:
+      - env
+    environment:
+      - MYSQL_HOST=mysql
+      - RAILS_ENV=development
+    volumes:
+      - ./data/webdns:/srv/webdns
+
+  reverse-proxy:
+    image: traefik
+    command: --api --docker
+    ports:
+      - "81:80"
+      - "8081:8080"
+    volumes:
+      - /var/run/docker.sock:/var/run/docker.sock
+
+  webdns-test:
+    build: webdns/.
+    depends_on:
+      - mysql
+    ports:
+      - '3000:3000'
+    env_file:
+      - env
+    environment:
+      - MYSQL_HOST=mysql
+      - RAILS_ENV=development
+    volumes:
+      - ./data/webdns:/srv/webdns
+    labels:
+      - traefik.frontend.rule=PathPrefixStrip:/test
+