diff --git a/Dockerfile b/Dockerfile
index 54a65ec5528393e225985428d8d03925f3f2353c..f95a8b3d108aa9d1413b771f7a7e2a94d97686c8 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,12 +1,11 @@
-FROM python:3
+FROM python:3.6
 
-COPY . /tmp/
-RUN chmod +x /tmp/entrypoint.sh
+COPY requirements.txt /tmp/
 
 RUN pip install --no-cache-dir -r /tmp/requirements.txt
 
-RUN python /tmp/manage.py migrate
-ENTRYPOINT ["/tmp/entrypoint.sh"]
+#RUN python /tmp/manage.py migrate
+#ENTRYPOINT ["/tmp/entrypoint.sh"]
 
 # Superuser parameters are --username USERNAME and --email EMAIL but there is no password
 # RUN python /tmp/manage.py createsuperuser
diff --git a/build.sh b/build.sh
new file mode 100755
index 0000000000000000000000000000000000000000..263476c355626b81e6d51940af34cbf847f5c104
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+exec sudo docker build -t aura/pv .
diff --git a/cleanup.sh b/cleanup.sh
new file mode 100755
index 0000000000000000000000000000000000000000..da119306e4e507effbb89626800d3b8f960b8ff6
--- /dev/null
+++ b/cleanup.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+BASE_D=$(realpath "${BASH_SOURCE%/*}/")
+
+rm -f "$BASE_D/pv/dev_data.sqlite"
diff --git a/prepare.sh b/prepare.sh
new file mode 100755
index 0000000000000000000000000000000000000000..0542405d178def25161a20c2d115036871794606
--- /dev/null
+++ b/prepare.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+BASE_D=$(realpath "${BASH_SOURCE%/*}/")
+
+sudo docker run --rm -it -u $UID:$GID -v "$BASE_D":/srv aura/pv /srv/manage.py migrate
+sudo docker run --rm -it -u $UID:$GID -v "$BASE_D":/srv aura/pv bash -c "/srv/manage.py loaddata /srv/program/fixtures/*.yaml"
+sudo docker run --rm -it -u $UID:$GID -v "$BASE_D":/srv aura/pv /srv/manage.py createsuperuser --username equinox --email equinox@helsinki.at
+sudo docker run --rm -it -u $UID:$GID -v "$BASE_D":/srv aura/pv /srv/manage.py creatersakey
diff --git a/pv/oidc_provider_settings.py b/pv/oidc_provider_settings.py
new file mode 100644
index 0000000000000000000000000000000000000000..e1b96998b883d69f3925736daa66325963297471
--- /dev/null
+++ b/pv/oidc_provider_settings.py
@@ -0,0 +1,30 @@
+from django.utils.translation import ugettext as _
+from oidc_provider.lib.claims import ScopeClaims
+
+
+class AuraScopeClaims(ScopeClaims):
+
+    info_username = (
+        _(u'username'),
+        _(u'Your username.'),
+    )
+
+    def scope_username(self):
+        dic = {
+            'username': self.user.username
+        }
+
+        return dic
+
+    info_aura_shows = (
+        _(u'AURA Shows'),
+        _(u'AURA shows you have access to.'),
+    )
+
+    def scope_aura_shows(self):
+        show_slugs = list(self.user.shows.all().values_list('slug', flat=True))
+        dic = {
+            'shows': show_slugs
+        }
+
+        return dic
diff --git a/pv/settings.py b/pv/settings.py
index 5ece1568bef969b3930a01912d34a0f665af0d6d..80514a60eb68ab845283e11006f7e50309206cbe 100644
--- a/pv/settings.py
+++ b/pv/settings.py
@@ -189,6 +189,7 @@ CBA_REST_API_URL = CBA_URL + '/wp-json/wp/v2/'
 # OIDC Provider Settings
 USE_TZ = True # django-oidc-provider needs timezones in database
 LOGIN_URL = '/admin/login/' # Login page OIDC redirects to
+OIDC_EXTRA_SCOPE_CLAIMS = 'pv.oidc_provider_settings.AuraScopeClaims'
 
 #WSGI_APPLICATION = 'pv.wsgi.application';
 
@@ -205,4 +206,4 @@ SPECIAL_PROGRAM_IDS = ()
 try:
     from .local_settings import *
 except ImportError:
-    pass
\ No newline at end of file
+    pass
diff --git a/run.sh b/run.sh
new file mode 100755
index 0000000000000000000000000000000000000000..4ad27d8f8a0621bd8ac58b91f0de76878c807e73
--- /dev/null
+++ b/run.sh
@@ -0,0 +1,4 @@
+#!/bin/bash
+BASE_D=$(realpath "${BASH_SOURCE%/*}/")
+
+exec sudo docker run --rm -it -u $UID:$GID -p 127.0.0.1:8000:8000 -v "$BASE_D":/srv aura/pv /srv/manage.py runserver 0.0.0.0:8000