diff --git a/run.sh b/run.sh
index 1907b8ef73c1947c886d10a7c80e86775d576b31..af638ba0c83518e14028af90f738aa25560526c4 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,25 @@ 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
+		if [[ -z ${TANK_CALLBACK_BASE_URL} ]]; then
+			TANK_CALLBACK_BASE_URL="${AURA_PROTO}://${AURA_HOST}/tank"
+		fi
+		if [[ -z ${DASHBOARD_CALLBACK_BASE_URL} ]]; then
+			DASHBOARD_CALLBACK_BASE_URL="${AURA_PROTO}://${AURA_HOST}"
+		fi
+		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