aboutsummaryrefslogtreecommitdiffstats
path: root/postgresql
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2018-09-06 12:26:06 +0200
committerNatanael Copa <ncopa@alpinelinux.org>2018-09-06 14:28:09 +0200
commit76dcf6a13c5736ec15fb31fbc19c9eb8dee803a0 (patch)
tree9edbe57876d921f229657d712da048b0e515850e /postgresql
parenta8cf191126eaf8271113958f29dcf8783b294420 (diff)
downloadgitlab-alpine-76dcf6a13c5736ec15fb31fbc19c9eb8dee803a0.tar.bz2
gitlab-alpine-76dcf6a13c5736ec15fb31fbc19c9eb8dee803a0.tar.xz
initial build of gitlab image
Diffstat (limited to 'postgresql')
-rw-r--r--postgresql/Dockerfile17
-rwxr-xr-xpostgresql/docker-entrypoint.sh23
2 files changed, 40 insertions, 0 deletions
diff --git a/postgresql/Dockerfile b/postgresql/Dockerfile
new file mode 100644
index 0000000..50d8eca
--- /dev/null
+++ b/postgresql/Dockerfile
@@ -0,0 +1,17 @@
+FROM alpine:3.8
+
+ENV PGDATA /var/lib/postgresql/data
+ENV LANG en_US.utf8
+
+RUN apk add --no-cache postgresql postgresql-contrib su-exec \
+ && install -d -o postgres -g postgres -m 700 "$PGDATA" \
+ && install -d -o postgres -g postgres -m 700 /run/postgresql
+
+VOLUME /var/lib/postgresql/data
+
+COPY docker-entrypoint.sh /usr/local/bin/
+ENTRYPOINT ["docker-entrypoint.sh"]
+
+EXPOSE 5432
+CMD ["postgres"]
+
diff --git a/postgresql/docker-entrypoint.sh b/postgresql/docker-entrypoint.sh
new file mode 100755
index 0000000..c438de9
--- /dev/null
+++ b/postgresql/docker-entrypoint.sh
@@ -0,0 +1,23 @@
+#!/bin/sh -e
+
+_su(){
+ su-exec postgres "$@"
+}
+
+if ! [ -s "$PGDATA"/PG_VERSION ]; then
+ echo "Initializing database"
+ _su initdb --username=postgres
+
+ _su pg_ctl -D "$PGDATA" \
+ -o "-c listen_addresses=''" \
+ -w start
+
+ # create database for gitlab
+ _su psql -c "CREATE USER git CREATEDB;"
+ _su psql -c "CREATE EXTENSION IF NOT EXISTS pg_trgm;"
+ _su psql -c "CREATE DATABASE gitlabhq_production OWNER git;"
+
+ _su pg_ctl -D "$PGDATA" -m fast -w stop
+fi
+
+_su "$@"