Files
jupyterhub/examples/postgres_db/initdb.sh
2014-10-30 17:51:00 -04:00

18 lines
770 B
Bash

#!/bin/bash
# Start a postgres daemon, ignoring log output.
gosu postgres pg_ctl start -w -l /dev/null
# Create a Jupyterhub user and database.
gosu postgres psql -c "CREATE DATABASE jupyterhub;"
gosu postgres psql -c "CREATE USER jupyterhub WITH ENCRYPTED PASSWORD '$JPY_PSQL_PASSWORD';"
gosu postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE jupyterhub TO jupyterhub;"
# Alter pg_hba.conf to actually require passwords. The default image exposes
# allows any user to connect without requiring a password, which is a liability
# if this is run forwarding ports from the host machine.
sed -ri -e 's/(host all all 0.0.0.0\/0 )(trust)/\1md5/' "$PGDATA"/pg_hba.conf
# Stop the daemon. The root Dockerfile will restart the server for us.
gosu postgres pg_ctl stop -w