@a_horse_with_no_name的评论使我处在正确的轨道上。我决定放弃单用户模式,即使它是“推荐”的。相反,我使用pg_ctl启动postgres,加载一些包含表创建内容的sql文件,并使用pg_ctl停止服务器。
我的shell脚本如下所示:
#!/bin/bashecho "******CREATING DOCKER DATAbase******"echo "starting postgres"gosu postgres pg_ctl -w startecho "bootstrapping the postgres db"gosu postgres psql -h localhost -p 5432 -U postgres -a -f /db/bootstrap.sqlecho "initializing tables"gosu postgres psql -h localhost -p 5432 -U postgres -d orpheus -a -f /db/setup.sqlecho "stopping postgres"gosu postgres pg_ctl stopecho "stopped postgres"echo ""echo "******DOCKER DATAbase CREATED******"



