From f8c699d79aa71f52d438ea9c7e83456504ffe566 Mon Sep 17 00:00:00 2001 From: Eric Frias <efrias@syncad.com> Date: Tue, 19 Nov 2024 21:37:02 +0000 Subject: [PATCH] Disable the postgrest rewriter's nginx http_rewrite engine logs by default, allow them to be enabled by an environment variable REWRITE_LOG=ON --- Dockerfile.rewriter | 5 ++++- ...conf => reputation_tracker_nginx.conf.template} | 5 ++++- docker/rewriter_entrypoint.sh | 14 ++++++++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) rename docker/{reputation_tracker_nginx.conf => reputation_tracker_nginx.conf.template} (78%) create mode 100755 docker/rewriter_entrypoint.sh diff --git a/Dockerfile.rewriter b/Dockerfile.rewriter index 9cd0c1c..d46fa11 100644 --- a/Dockerfile.rewriter +++ b/Dockerfile.rewriter @@ -1,7 +1,10 @@ FROM openresty/openresty:alpine AS without_tag -COPY docker/reputation_tracker_nginx.conf /usr/local/openresty/nginx/conf/nginx.conf +COPY docker/reputation_tracker_nginx.conf.template /usr/local/openresty/nginx/conf/nginx.conf COPY rewrite_rules.conf /usr/local/openresty/nginx/conf/rewrite_rules.conf +COPY docker/rewriter_entrypoint.sh /entrypoint.sh + +CMD ["/entrypoint.sh"] ARG BUILD_TIME ARG GIT_COMMIT_SHA diff --git a/docker/reputation_tracker_nginx.conf b/docker/reputation_tracker_nginx.conf.template similarity index 78% rename from docker/reputation_tracker_nginx.conf rename to docker/reputation_tracker_nginx.conf.template index c3b3ea6..c955343 100644 --- a/docker/reputation_tracker_nginx.conf +++ b/docker/reputation_tracker_nginx.conf.template @@ -16,7 +16,10 @@ http { location / { include rewrite_rules.conf; - rewrite_log on; + # ${REWRITE_LOG} will be replaced by the docker entrypoint script. + # Set REWRITE_LOG=on in the environment to enable rewrite logging, + # otherwise it will remain disabled + ${REWRITE_LOG} proxy_pass http://reputation-tracker-postgrest:3000; # my PostREST is here! diff --git a/docker/rewriter_entrypoint.sh b/docker/rewriter_entrypoint.sh new file mode 100755 index 0000000..0072e77 --- /dev/null +++ b/docker/rewriter_entrypoint.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +# Default value for REWRITE_LOG is off, unless explicitly set to 'on' +if [ "$REWRITE_LOG" = "on" ]; then + REWRITE_LOG="rewrite_log on;" +else + REWRITE_LOG="# rewrite_log off;" +fi + +# Use sed to replace the placeholder in the nginx template file +sed "s|\${REWRITE_LOG}|$REWRITE_LOG|g" /usr/local/openresty/nginx/conf/nginx.conf.template > /usr/local/openresty/nginx/conf/nginx.conf + +# Start nginx +/usr/local/openresty/bin/openresty -g 'daemon off;' -- GitLab