diff --git a/run.sh b/run.sh
index 1907b8ef73c1947c886d10a7c80e86775d576b31..265924e066309638c7c01aa9bb6b7d41418cdf89 100755
--- a/run.sh
+++ b/run.sh
@@ -18,7 +18,7 @@ docker="false"
 # - docker:dev
 # 
 
-if [[ $* =~ ^(init|dev|prod|test|build|push|serve)$ ]]; then
+if [[ $* =~ ^(init|init-db|dev|prod|test|build|push|serve)$ ]]; then
 	mode=$1
 fi
 
@@ -37,6 +37,19 @@ echo "[ Docker=$docker ]"
 
 if [[ $docker == "false" ]]; then
 
+	if [[ $mode == "init-db" ]]; then
+		echo "apply database migrations"
+		./manage.py migrate
+		echo "create django superuser"
+		./manage.py createsuperuser --noinput
+		echo "create rsa key"
+		./manage.py creatersakey
+		echo "create dashboard client with client id $DASHBOARD_OIDC_CLIENT_ID"
+    	./manage.py create_oidc_client dashboard public --client-id $DASHBOARD_OIDC_CLIENT_ID --client-secret $DASHBOARD_OIDC_CLIENT_SECRET -r "id_token token" -u ${DASHBOARD_CALLBACK_BASE_URL}/oidc_callback.html -u ${DASHBOARD_CALLBACK_BASE_URL}/oidc_callback_silentRenew.html -p ${DASHBOARD_CALLBACK_BASE_URL}
+    	echo "create tank client with client id $TANK_OIDC_CLIENT_ID"
+		./manage.py create_oidc_client tank confidential --client-id $TANK_OIDC_CLIENT_ID --client-secret $TANK_OIDC_CLIENT_SECRET -r "code" -u ${TANK_CALLBACK_BASE_URL}/auth/oidc/callback
+	fi
+
 	### Initializes the project (Development) ###
 
 	if [[ $mode == "init" ]]; then