diff --git a/docker-compose.yml b/docker-compose.yml index fd007f91..a9e6b4f2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -86,6 +86,8 @@ services: map_https: # HTTPS for map tile server depends_on: - map + environment: + - UPSTREAM_HOST=map build: context: . dockerfile: docker/https_proxy/Dockerfile @@ -130,6 +132,8 @@ services: zim_https: # HTTPS for Zim service. depends_on: - zim + environment: + - UPSTREAM_HOST=zim build: context: . dockerfile: docker/https_proxy/Dockerfile @@ -154,6 +158,8 @@ services: help_https: # HTTPS for Help service. depends_on: - help + environment: + - UPSTREAM_HOST=help build: context: . dockerfile: docker/https_proxy/Dockerfile diff --git a/docker/https_proxy/Dockerfile b/docker/https_proxy/Dockerfile index 1c00a4a3..18f9e1ae 100644 --- a/docker/https_proxy/Dockerfile +++ b/docker/https_proxy/Dockerfile @@ -7,6 +7,10 @@ RUN openssl req -new -x509 -nodes -key /cert.key -out /cert.crt -days 3650 \ -subj "/C=US/ST=State/L=City/O=Org/OU=WROLPi/CN=wrolpi.local" RUN chmod 777 /cert.key /cert.crt -# Copy Nginx configuration -COPY docker/https_proxy/nginx.proxy.conf /etc/nginx/nginx.conf +# Apply docker-compose environment variables to config +ENV UPSTREAM_HOST=you-must-change-this-in-docker-compose +ENV UPSTREAM_PORT=80 +COPY docker/https_proxy/nginx.proxy.conf.template /etc/nginx/nginx.conf +RUN envsubst < /etc/nginx/nginx.conf > /etc/nginx/nginx.conf + CMD ["nginx", "-g", "daemon off;"] diff --git a/docker/https_proxy/nginx.proxy.conf b/docker/https_proxy/nginx.proxy.conf.template similarity index 85% rename from docker/https_proxy/nginx.proxy.conf rename to docker/https_proxy/nginx.proxy.conf.template index f55e683a..c00f0d81 100644 --- a/docker/https_proxy/nginx.proxy.conf +++ b/docker/https_proxy/nginx.proxy.conf.template @@ -8,7 +8,7 @@ http { ssl_certificate_key /cert.key; location / { - proxy_pass http://localhost:80; + proxy_pass http://${UPSTREAM_HOST}:${UPSTREAM_PORT}; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;