diff --git a/src/web-nginx/Dockerfile b/src/web-nginx/Dockerfile index 50d976b..234a60f 100644 --- a/src/web-nginx/Dockerfile +++ b/src/web-nginx/Dockerfile @@ -2,4 +2,14 @@ FROM nginx:alpine HEALTHCHECK CMD curl --fail http://localhost/tt-rss/index.php || exit 1 -COPY nginx.conf /etc/nginx/nginx.conf +COPY nginx.conf /etc/nginx/templates/nginx.conf.template + +# By default, nginx will send the php requests to "app" server, but this server +# name can be overridden at runtime by passing an APP_SERVERNAME env var +ENV APP_SERVERNAME=${APP_SERVERNAME:-app} + +# It's necessary to set the following NGINX_ENVSUBST_OUTPUT_DIR env var to tell +# nginx to replace the env vars of /etc/nginx/templates/nginx.conf.template +# and put the result in /etc/nginx/nginx.conf (instead of /etc/nginx/conf.d/nginx.conf) +# See https://github.com/docker-library/docs/tree/master/nginx#using-environment-variables-in-nginx-configuration-new-in-119 +ENV NGINX_ENVSUBST_OUTPUT_DIR=/etc/nginx diff --git a/src/web-nginx/nginx.conf b/src/web-nginx/nginx.conf index 131dd79..f189785 100644 --- a/src/web-nginx/nginx.conf +++ b/src/web-nginx/nginx.conf @@ -17,7 +17,7 @@ http { index index.php; upstream app { - server app:9000; + server ${APP_SERVERNAME}:9000; } server {