diff --git a/Dockerfile b/Dockerfile index d035148..2820994 100644 --- a/Dockerfile +++ b/Dockerfile @@ -42,4 +42,5 @@ ENV AUTH_METHOD internal # always re-configure database with current ENV when RUNning container, then monitor all services ADD configure-db.php /configure-db.php ADD supervisord.conf /etc/supervisor/conf.d/supervisord.conf -CMD php /configure-db.php && supervisord -c /etc/supervisor/conf.d/supervisord.conf +ADD entrypoint.sh /entrypoint.sh +ENTRYPOINT ["/entrypoint.sh"] diff --git a/entrypoint.sh b/entrypoint.sh new file mode 100755 index 0000000..1011e4c --- /dev/null +++ b/entrypoint.sh @@ -0,0 +1,19 @@ +#!/bin/bash +set -e + +# remove trailing / if any. +SELF_URL_PATH=${SELF_URL_PATH/%\//} + +# extract the root path from SELF_URL_PATH (i.e http://domain.tld/). +ROOT_PATH=${SELF_URL_PATH/#http*\:\/\/*\//} +if [ "${ROOT_PATH}" == "${SELF_URL_PATH}" ]; then + # no root path in SELF_URL_PATH. + mkdir -p /var/tmp + ln -sf "/var/www" "/var/tmp/www" +else + mkdir -p /var/tmp/www + ln -sf "/var/www" "/var/tmp/www/${ROOT_PATH}" +fi + +php /configure-db.php +exec supervisord -c /etc/supervisor/conf.d/supervisord.conf diff --git a/ttrss.nginx.conf b/ttrss.nginx.conf index fa46f23..9c9184d 100644 --- a/ttrss.nginx.conf +++ b/ttrss.nginx.conf @@ -1,6 +1,6 @@ server { listen 80; - root /var/www; + root /var/tmp/www; index index.php index.html; @@ -15,4 +15,3 @@ server { include fastcgi_params; } } -