diff --git a/.gitignore b/.gitignore
index b9fb041b732c73c798f8b51df9b8a4b7365fc67e..fc9b731cf6550a53e6f32b0d0e93b9f6e8903f6d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,4 +2,5 @@ data_dev.sqlite
 migrations
 venv
 .env
+.env_database
 __pycache__
diff --git a/config.py b/config.py
index 96aaa6d1aedabe1209bd55c0f55eb01870c50eed..1b3403011003d8c85032acc8d32bc7ba71bdbd64 100644
--- a/config.py
+++ b/config.py
@@ -24,8 +24,16 @@ class Config:
 
 class DevelopmentConfig(Config):
     DEBUG = True
-    SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir,
-                                                          'data_dev.sqlite')
+    # SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir,
+    #                                                       'data_dev.sqlite')
+    SQLALCHEMY_DATABASE_URI = \
+        'postgresql+psycopg2://{user}:{passwd}@{host}:{port}/{db}'.format(
+            user=os.environ.get('POSTGRES_USER'),
+            passwd=os.environ.get('POSTGRES_PASSWORD'),
+            host=os.environ.get('POSTGRES_HOST'),
+            port=os.environ.get('POSTGRES_PORT'),
+            db=os.environ.get('POSTGRES_DB_NAME'))
+    print(SQLALCHEMY_DATABASE_URI)
 
 
 class TestingConfig(Config):
@@ -41,7 +49,7 @@ class TestingConfig(Config):
 config = {
     'development': DevelopmentConfig,
     'testing': TestingConfig,
-    # 'production': ProductionConfig,
+    #'production': ProductionConfig,
 
     'default': DevelopmentConfig
 }
diff --git a/docker-compose.yml b/docker-compose.yml
index 996d29a2bcc1878027166feea958945139485434..18e5575c2d943a6c1312df9debae3b11a88ababf 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -3,12 +3,40 @@ version: '3.7'
 services:
   web:
     build: .
-    container_name: web_flask_opaque
+    container_name: opaque_flask
     image: gitlab.ub.uni-bielefeld.de:4567/sfb1288inf/opaque
     volumes:
       - .:/opaque
+      - $HOME/opaque_test:/home/compute/mnt/opaque
     env_file:
       - .env
+      - .env_database
     ports:
       - 5000:5000
+    depends_on:
+      - db
+    links:
+      - db
     command: bash flask-entrypoint.sh
+  daemon:
+    container_name: opaque_daemon
+    image: gitlab.ub.uni-bielefeld.de:4567/sfb1288inf/daemon_opaque
+    network_mode: "host"
+    volumes:
+      - /home/stephan/Repos/own/opaque/data_dev.sqlite:/daemon/db/data_dev.sqlite
+      - $HOME/.docker/config.json:/root/.docker/config.json
+    depends_on:
+      - db
+  db:
+    container_name: opaque_db
+    image: postgres:11.5
+    env_file:
+      - .env_database
+    ports:
+      - 5432:5432
+    volumes:
+      - postgres_data:/var/lib/postgresql/data
+    restart: always
+
+volumes:
+  postgres_data:
diff --git a/requirements.txt b/requirements.txt
index 2592d0010576f6165ac1f5235eb52a455bcb4a59..3fce165f3eb186f2fb15a8f2c4036a4a04e25e4b 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -8,5 +8,6 @@ Flask-SQLAlchemy
 Flask-Table
 Flask-WTF
 jsonpatch
+psycopg2
 python-dotenv
 redis