aboutsummaryrefslogtreecommitdiff
path: root/etc/sv/postgres
diff options
context:
space:
mode:
Diffstat (limited to 'etc/sv/postgres')
-rwxr-xr-xetc/sv/postgres/run14
1 files changed, 14 insertions, 0 deletions
diff --git a/etc/sv/postgres/run b/etc/sv/postgres/run
new file mode 100755
index 0000000..dafcfe3
--- /dev/null
+++ b/etc/sv/postgres/run
@@ -0,0 +1,14 @@
+#!/bin/sh
+set -e
+pguser="postgres"
+
+PGDATA="/postgres"
+if ! [ -d "$PGDATA" ] ; then
+ mkdir -p "$PGDATA"
+ chown -R "$pguser" "$PGDATA"
+ chmod 700 "$PGDATA"
+ su - postgres -m -c "pg_ctl initdb -D \"$PGDATA\""
+fi
+
+mkdir -p /run/postgresql && chown "$pguser" /run/postgresql
+exec chpst -u postgres:postgres postgres -D "$PGDATA" 2>&1