diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..90bc627058ec1fae3b1bfceb55f9e05cba4709f1
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+deployment
+.DS_Store
diff --git a/provisioning/couchdb-ingress.yaml b/provisioning/couchdb-ingress.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..fe3df6ea01c992c5a70e20d5c572e245f5ec73af
--- /dev/null
+++ b/provisioning/couchdb-ingress.yaml
@@ -0,0 +1,23 @@
+apiVersion: extensions/v1beta1
+kind: Ingress
+metadata:
+  name: couchdb-${CI_ENVIRONMENT_SLUG}
+  namespace: ${KUBE_NAMESPACE}
+  labels:
+    app: couchdb-${CI_ENVIRONMENT_SLUG}
+  annotations:
+    kubernetes.io/tls-acme: "true"
+    kubernetes.io/ingress.class: "nginx"
+spec:
+  tls:
+  - hosts:
+    - ${CI_ENVIRONMENT_SLUG}.gateway.xpub.semioticsquares.com 
+    secretName: couchdb-tls-${CI_ENVIRONMENT_SLUG}
+  rules:
+  - host: ${CI_ENVIRONMENT_SLUG}.gateway.xpub.semioticsquares.com 
+    http:
+      paths:
+      - path: /
+        backend:
+          serviceName: couchdb-${CI_ENVIRONMENT_SLUG} 
+          servicePort: 5984
diff --git a/provisioning/couchdb-service-internal.yaml b/provisioning/couchdb-service-internal.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..dbcd518243f33222dbfe5a7ba0858ba257d36371
--- /dev/null
+++ b/provisioning/couchdb-service-internal.yaml
@@ -0,0 +1,15 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: couchdb-internal-${CI_ENVIRONMENT_SLUG}
+  namespace: ${KUBE_NAMESPACE}
+  labels:
+    app: couchdb-${CI_ENVIRONMENT_SLUG}
+spec:
+  clusterIP: None
+  ports:
+  - protocol: TCP
+    name: couchdb
+    port: 5984
+  selector:
+    app: couchdb-${CI_ENVIRONMENT_SLUG}
diff --git a/provisioning/couchdb-service.yaml b/provisioning/couchdb-service.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..c37af06e479f8ed817938e8a513ef7697173c365
--- /dev/null
+++ b/provisioning/couchdb-service.yaml
@@ -0,0 +1,16 @@
+apiVersion: v1
+kind: Service
+metadata:
+  name: couchdb-${CI_ENVIRONMENT_SLUG}
+  namespace: ${KUBE_NAMESPACE}
+  labels:
+    app: couchdb-${CI_ENVIRONMENT_SLUG}
+spec:
+  type: ClusterIP
+  ports:
+  - protocol: TCP
+    name: couchdb
+    port: 5984
+  selector:
+    app: couchdb-${CI_ENVIRONMENT_SLUG}
+
diff --git a/provisioning/couchdb-statefulset.yaml b/provisioning/couchdb-statefulset.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b1b06f9221325cd0b48d6465de51ea0163d1ecec
--- /dev/null
+++ b/provisioning/couchdb-statefulset.yaml
@@ -0,0 +1,71 @@
+apiVersion: apps/v1beta1
+kind: StatefulSet 
+metadata:
+  name: couchdb-${CI_ENVIRONMENT_SLUG}
+  namespace: ${KUBE_NAMESPACE}
+  labels:
+    app: couchdb-${CI_ENVIRONMENT_SLUG}
+    track: stable
+spec:
+  replicas: 1
+  serviceName: couchdb-internal-${CI_ENVIRONMENT_SLUG}
+  selector:
+    matchLabels:
+      app: couchdb-${CI_ENVIRONMENT_SLUG}
+  template:
+    metadata:
+      labels:
+        app: couchdb-${CI_ENVIRONMENT_SLUG}
+    spec:
+      containers:
+      - name: couchdb
+        image: couchdb:2.1.1
+        imagePullPolicy: Always
+        ports:
+        - name: couchdb
+          containerPort: 5984
+        - name: epmd
+          containerPort: 4369
+        - containerPort: 9100
+        env:
+        - name: ERL_FLAGS
+          value: "-name couchdb -setcookie monster"
+        - name: COUCHDB_USER
+          valueFrom:
+            secretKeyRef:
+              name: couchdb
+              key: adminUsername
+        - name: COUCHDB_PASSWORD
+          valueFrom:
+            secretKeyRef:
+              name: couchdb
+              key: adminPassword
+        - name: COUCHDB_SECRET
+          valueFrom:
+            secretKeyRef:
+              name: couchdb
+              key: cookieAuthSecret
+        livenessProbe:
+          httpGet:
+            path: /
+            port: 5984
+        readinessProbe:
+          httpGet:
+            path: /_up
+            port: 5984
+        volumeMounts:
+        - name: couchdb-${CI_ENVIRONMENT_SLUG}
+          mountPath: /var/lib/couchdb
+      volumes:
+        - name: couchdb-${CI_ENVIRONMENT_SLUG}
+  volumeClaimTemplates:
+    - metadata:
+        name: couchdb-${CI_ENVIRONMENT_SLUG}
+        labels:
+          app: couchdb-${CI_ENVIRONMENT_SLUG}
+      spec:
+        accessModes:
+          - ReadWriteOnce
+        resources:
+          requests:
+            storage: 5Gi