@a_horse_with_no_name mi ha messo sulla strada giusta con il suo commento. Ho deciso di abbandonare la modalità utente singolo anche se era "consigliata". Invece inizio postgres con pg_ctl, carico alcuni file sql contenenti le mie creazioni di tabelle e arresto il server con pg_ctl.
Il mio script di shell è simile a questo:
#!/bin/bash
echo "******CREATING DOCKER DATABASE******"
echo "starting postgres"
gosu postgres pg_ctl -w start
echo "bootstrapping the postgres db"
gosu postgres psql -h localhost -p 5432 -U postgres -a -f /db/bootstrap.sql
echo "initializing tables"
gosu postgres psql -h localhost -p 5432 -U postgres -d orpheus -a -f /db/setup.sql
echo "stopping postgres"
gosu postgres pg_ctl stop
echo "stopped postgres"
echo ""
echo "******DOCKER DATABASE CREATED******"