summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Spek <p.spek@tyil.nl>2024-08-07 22:40:35 +0200
committerPatrick Spek <p.spek@tyil.nl>2024-08-07 23:01:30 +0200
commit973b55e65e59df2a41548736cd8b119e5d87e716 (patch)
tree83626c9364f51d0ebf36bc296c21b0a1b6e9c3d6
parent64fc021645506405a7cc4c872f4653906621b94e (diff)
downloadcgit-973b55e65e59df2a41548736cd8b119e5d87e716.tar.gz
cgit-973b55e65e59df2a41548736cd8b119e5d87e716.tar.bz2
Make user and group IDs used for Apache configurable
-rw-r--r--conf.d/httpd.conf4
-rw-r--r--entrypoint.sh6
2 files changed, 9 insertions, 1 deletions
diff --git a/conf.d/httpd.conf b/conf.d/httpd.conf
index 787c68b..5653330 100644
--- a/conf.d/httpd.conf
+++ b/conf.d/httpd.conf
@@ -11,9 +11,11 @@ LoadModule unixd_module lib/apache2/mod_unixd.so
TypesConfig /etc/apache2/mime.types
ServerName "${HOSTNAME}"
-User nobody
Listen *:${HTTPD_LISTEN_PORT}
+User cgit
+Group cgit
+
ServerRoot "/etc/apache2"
DocumentRoot "/usr/share/webapps/cgit"
diff --git a/entrypoint.sh b/entrypoint.sh
index 2a43a24..5375491 100644
--- a/entrypoint.sh
+++ b/entrypoint.sh
@@ -10,7 +10,9 @@ export CGITRC_ROOT_TITLE="${CGITRC_ROOT_TILE:-"Git repository browser"}"
export CGITRC_SCAN_PATH="${CGITRC_SCAN_PATH:-"/srv/git"}"
export CGITRC_SNAPSHOTS="${CGITRC_SNAPSHOTS:-"tar.gz"}"
export HOSTNAME="${HOSTNAME:-"$(hostname -f)"}"
+export HTTPD_GROUP="${HTTPD_GROUP:-"1000"}"
export HTTPD_LISTEN_PORT="${HTTPD_LISTEN_PORT:-"80"}"
+export HTTPD_USER="${HTTPD_USER:-"1000"}"
# Output debugging info
env | grep '^CGITRC_' | sort
@@ -25,5 +27,9 @@ envsubst \
< "/etc/cgitrc.template" \
> "/etc/cgitrc"
+# Create group and user
+addgroup -g "$HTTPD_GROUP" cgit
+adduser -G cgit -h "$CGITRC_SCAN_PATH" -u "$HTTPD_USER" cgit
+
# Run apache2
exec /usr/sbin/httpd -D FOREGROUND