#!/usr/bin/with-contenv bash # shellcheck shell=bash ### # SWAG LOGIC https://github.com/linuxserver/docker-swag/blob/master/root/etc/cont-init.d/50-config ### # copy reverse proxy configs cp -R /defaults/proxy-confs /config/nginx/ # copy proxy defaults [[ ! -f /config/nginx/proxy.conf ]] && cp /defaults/proxy.conf /config/nginx/proxy.conf [[ ! -f /config/nginx/ssl.conf ]] && cp /defaults/ssl.conf /config/nginx/ssl.conf # Set resolver if ! grep -q 'resolver' /config/nginx/resolver.conf; then RESOLVER=$(awk 'BEGIN{ORS=" "} $1=="nameserver" {print $2}' /etc/resolv.conf) echo "Setting resolver to ${RESOLVER}" echo -e "# This file is auto-generated only on first start, based on the container's /etc/resolv.conf file. Feel free to modify it as you wish.\n\nresolver ${RESOLVER} valid=30s;" > /config/nginx/resolver.conf fi # Set worker_processes if ! grep -q 'worker_processes' /config/nginx/worker_processes.conf; then WORKER_PROCESSES=$(nproc) echo "Setting worker_processes to ${WORKER_PROCESSES}" echo -e "# This file is auto-generated only on first start, based on the cpu cores detected. Feel free to change it to any other number or to auto to let nginx handle it automatically.\n\nworker_processes ${WORKER_PROCESSES};" > /config/nginx/worker_processes.conf fi # copy pre-generated dhparams or generate if needed [[ ! -f /config/nginx/dhparams.pem ]] && \ cp /defaults/dhparams.pem /config/nginx/dhparams.pem if ! grep -q 'PARAMETERS' "/config/nginx/dhparams.pem"; then curl -o /config/nginx/dhparams.pem -L "https://ssl-config.mozilla.org/ffdhe4096.txt" fi # permissions chown -R abc:abc \ /config/nginx/{proxy.conf,ssl.conf,dhparams.pem,proxy-confs/}