diff --git a/.gitignore b/.gitignore
index 07f43b8..8e23fc8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
-data/*
\ No newline at end of file
+data/*
+tests/certs/
diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml
new file mode 100644
index 0000000..249f6ee
--- /dev/null
+++ b/tests/docker-compose.yml
@@ -0,0 +1,23 @@
+version: '3.7'
+
+services:
+  prosody:
+    image: prosody
+    restart: unless-stopped
+    ports:
+      - "5000:5000"
+      - "5222:5222"
+      - "5223:5223"
+      - "5269:5269"
+      - "5281:5281"
+    environment:
+      DOMAIN: prosody
+      PROSODY_ADMINS: "admin@prosody, admin2@prosody"
+    extra_hosts:
+      - "conference.prosody:127.0.0.1"
+      - "pubsub.prosody:127.0.0.1"
+      - "proxy.prosody:127.0.0.1"
+      - "upload.prosody:127.0.0.1"
+    volumes:
+      - ./certs:/usr/local/etc/prosody/certs
+        #- ./data:/usr/local/var/lib/prosody
diff --git a/tests/test.zsh b/tests/test.zsh
new file mode 100755
index 0000000..a1a43b3
--- /dev/null
+++ b/tests/test.zsh
@@ -0,0 +1,18 @@
+#!/bin/zsh
+
+# generate certs for testing
+
+generateCert() {
+    DOMAIN="$1"
+    mkdir -p certs/"$DOMAIN"
+    cd certs/"$DOMAIN"
+    openssl req -x509 -newkey rsa:4096 -keyout privkey.pem -out fullchain.pem -days 365 -subj "/CN=$DOMAIN" -nodes
+    chmod 777 *.pem
+    cd ../../
+}
+
+generateCert "prosody"
+generateCert "conference.prosody"
+generateCert "pubsub.prosody"
+generateCert "proxy.prosody"
+generateCert "upload.prosody"