mirror of
https://github.com/TrezOne/docker-mods-uptime-kuma-timeout-fix.git
synced 2026-07-18 08:48:27 -04:00
Merge pull request #206 from linuxserver/swag-auto-proxy-internal
move auto generated confs into the container
This commit is contained in:
+23
-23
@@ -30,7 +30,7 @@ else
|
|||||||
for CONTAINER in $EXISTING_CONFS; do
|
for CONTAINER in $EXISTING_CONFS; do
|
||||||
if ! grep -q "${CONTAINER}" <<< "${ENABLED_CONTAINERS}"; then
|
if ! grep -q "${CONTAINER}" <<< "${ENABLED_CONTAINERS}"; then
|
||||||
echo "**** Removing conf for ${CONTAINER} ****"
|
echo "**** Removing conf for ${CONTAINER} ****"
|
||||||
rm -rf "/auto-proxy/${CONTAINER}.conf" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
rm -rf "/auto-proxy/${CONTAINER}.conf" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
REMOVED_CONTAINERS="true"
|
REMOVED_CONTAINERS="true"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -49,42 +49,42 @@ for CONTAINER in ${AUTO_GEN}; do
|
|||||||
done
|
done
|
||||||
. /auto-proxy/${CONTAINER}.conf
|
. /auto-proxy/${CONTAINER}.conf
|
||||||
if [ -f "/config/nginx/proxy-confs/${CONTAINER}.subdomain.conf.sample" ]; then
|
if [ -f "/config/nginx/proxy-confs/${CONTAINER}.subdomain.conf.sample" ]; then
|
||||||
cp "/config/nginx/proxy-confs/${CONTAINER}.subdomain.conf.sample" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
cp "/config/nginx/proxy-confs/${CONTAINER}.subdomain.conf.sample" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Using preset proxy conf for ${CONTAINER} ****"
|
echo "**** Using preset proxy conf for ${CONTAINER} ****"
|
||||||
if [ -n "${swag_auth_bypass}" ]; then
|
if [ -n "${swag_auth_bypass}" ]; then
|
||||||
echo "**** Swag auth bypass is auto managed via preset confs and cannot be overridden via env vars ****"
|
echo "**** Swag auth bypass is auto managed via preset confs and cannot be overridden via env vars ****"
|
||||||
fi
|
fi
|
||||||
if [ -n "${swag_port}" ]; then
|
if [ -n "${swag_port}" ]; then
|
||||||
sed -i "s|set \$upstream_port .*|set \$upstream_port ${swag_port};|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|set \$upstream_port .*|set \$upstream_port ${swag_port};|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Overriding port for ${CONTAINER} ****"
|
echo "**** Overriding port for ${CONTAINER} ****"
|
||||||
fi
|
fi
|
||||||
if [ -n "${swag_proto}" ]; then
|
if [ -n "${swag_proto}" ]; then
|
||||||
sed -i "s|set \$upstream_proto .*|set \$upstream_proto ${swag_proto};|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|set \$upstream_proto .*|set \$upstream_proto ${swag_proto};|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Overriding proto for ${CONTAINER} ****"
|
echo "**** Overriding proto for ${CONTAINER} ****"
|
||||||
fi
|
fi
|
||||||
if [ -n "${swag_url}" ]; then
|
if [ -n "${swag_url}" ]; then
|
||||||
sed -i "s|server_name .*|server_name ${swag_url};|" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|server_name .*|server_name ${swag_url};|" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Overriding url for ${CONTAINER} ****"
|
echo "**** Overriding url for ${CONTAINER} ****"
|
||||||
fi
|
fi
|
||||||
if [ "${swag_auth}" == "authelia" ]; then
|
if [ "${swag_auth}" == "authelia" ]; then
|
||||||
sed -i "s|#include /config/nginx/authelia|include /config/nginx/authelia|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#include /config/nginx/authelia|include /config/nginx/authelia|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Enabling Authelia for ${CONTAINER} ****"
|
echo "**** Enabling Authelia for ${CONTAINER} ****"
|
||||||
elif [ "${swag_auth}" == "http" ]; then
|
elif [ "${swag_auth}" == "http" ]; then
|
||||||
sed -i "s|#auth_basic|auth_basic|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#auth_basic|auth_basic|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
||||||
elif [ "${swag_auth}" == "ldap" ]; then
|
elif [ "${swag_auth}" == "ldap" ]; then
|
||||||
sed -i "s|#include /config/nginx/ldap.conf;|include /config/nginx/ldap.conf;|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#include /config/nginx/ldap.conf;|include /config/nginx/ldap.conf;|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
sed -i "s|#auth_request /auth;|auth_request /auth;|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#auth_request /auth;|auth_request /auth;|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
sed -i "s|#error_page 401 =200 /ldaplogin;|error_page 401 =200 /ldaplogin;|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#error_page 401 =200 /ldaplogin;|error_page 401 =200 /ldaplogin;|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
echo "**** No preset proxy conf found for ${CONTAINER}, generating from scratch ****"
|
echo "**** No preset proxy conf found for ${CONTAINER}, generating from scratch ****"
|
||||||
cp "/config/nginx/proxy-confs/_template.subdomain.conf.sample" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
cp "/config/nginx/proxy-confs/_template.subdomain.conf.sample" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
if [ -n "${swag_auth_bypass}" ]; then
|
if [ -n "${swag_auth_bypass}" ]; then
|
||||||
sed -i 's|^}$||' "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i 's|^}$||' "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
for location in $(echo ${swag_auth_bypass} | tr "," " "); do
|
for location in $(echo ${swag_auth_bypass} | tr "," " "); do
|
||||||
cat <<DUDE >> "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
cat <<DUDE >> "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
|
|
||||||
location ~ ${location} {
|
location ~ ${location} {
|
||||||
include /config/nginx/proxy.conf;
|
include /config/nginx/proxy.conf;
|
||||||
@@ -98,9 +98,9 @@ for CONTAINER in ${AUTO_GEN}; do
|
|||||||
|
|
||||||
DUDE
|
DUDE
|
||||||
done
|
done
|
||||||
echo "}" >> "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
echo "}" >> "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
fi
|
fi
|
||||||
sed -i "s|<container_name>|${CONTAINER}|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|<container_name>|${CONTAINER}|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
if [ -z "${swag_port}" ]; then
|
if [ -z "${swag_port}" ]; then
|
||||||
swag_port=$(docker inspect ${CONTAINER} | jq -r '.[0].NetworkSettings.Ports | keys[0]' | sed 's|/.*||')
|
swag_port=$(docker inspect ${CONTAINER} | jq -r '.[0].NetworkSettings.Ports | keys[0]' | sed 's|/.*||')
|
||||||
if [ "${swag_port}" == "null" ]; then
|
if [ "${swag_port}" == "null" ]; then
|
||||||
@@ -108,28 +108,28 @@ DUDE
|
|||||||
swag_port="80"
|
swag_port="80"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
sed -i "s|set \$upstream_port .*|set \$upstream_port ${swag_port};|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|set \$upstream_port .*|set \$upstream_port ${swag_port};|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Setting port ${swag_port} for ${CONTAINER} ****"
|
echo "**** Setting port ${swag_port} for ${CONTAINER} ****"
|
||||||
if [ -z "${swag_proto}" ]; then
|
if [ -z "${swag_proto}" ]; then
|
||||||
swag_proto="http"
|
swag_proto="http"
|
||||||
fi
|
fi
|
||||||
sed -i "s|set \$upstream_proto .*|set \$upstream_proto ${swag_proto};|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|set \$upstream_proto .*|set \$upstream_proto ${swag_proto};|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Setting proto ${swag_proto} for ${CONTAINER} ****"
|
echo "**** Setting proto ${swag_proto} for ${CONTAINER} ****"
|
||||||
if [ -z "${swag_url}" ]; then
|
if [ -z "${swag_url}" ]; then
|
||||||
swag_url="${CONTAINER}.*"
|
swag_url="${CONTAINER}.*"
|
||||||
fi
|
fi
|
||||||
sed -i "s|server_name .*|server_name ${swag_url};|" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|server_name .*|server_name ${swag_url};|" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Setting url ${swag_url} for ${CONTAINER} ****"
|
echo "**** Setting url ${swag_url} for ${CONTAINER} ****"
|
||||||
if [ "${swag_auth}" == "authelia" ]; then
|
if [ "${swag_auth}" == "authelia" ]; then
|
||||||
sed -i "s|#include /config/nginx/authelia|include /config/nginx/authelia|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#include /config/nginx/authelia|include /config/nginx/authelia|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Enabling Authelia for ${CONTAINER} ****"
|
echo "**** Enabling Authelia for ${CONTAINER} ****"
|
||||||
elif [ "${swag_auth}" == "http" ]; then
|
elif [ "${swag_auth}" == "http" ]; then
|
||||||
sed -i "s|#auth_basic|auth_basic|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#auth_basic|auth_basic|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
||||||
elif [ "${swag_auth}" == "ldap" ]; then
|
elif [ "${swag_auth}" == "ldap" ]; then
|
||||||
sed -i "s|#include /config/nginx/ldap.conf;|include /config/nginx/ldap.conf;|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#include /config/nginx/ldap.conf;|include /config/nginx/ldap.conf;|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
sed -i "s|#auth_request /auth;|auth_request /auth;|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#auth_request /auth;|auth_request /auth;|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
sed -i "s|#error_page 401 =200 /ldaplogin;|error_page 401 =200 /ldaplogin;|g" "/config/nginx/proxy-confs/auto-proxy-${CONTAINER}.subdomain.conf"
|
sed -i "s|#error_page 401 =200 /ldaplogin;|error_page 401 =200 /ldaplogin;|g" "/etc/nginx/http.d/auto-proxy-${CONTAINER}.subdomain.conf"
|
||||||
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
echo "**** Enabling basic http auth for ${CONTAINER} ****"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
#!/usr/bin/with-contenv bash
|
#!/usr/bin/with-contenv bash
|
||||||
|
|
||||||
sed -i '/\/app\/auto-proxy.sh/d' /config/crontabs/root
|
sed -i '/\/app\/auto-proxy.sh/d' /config/crontabs/root
|
||||||
rm -rf /config/nginx/proxy-confs/auto-proxy*.conf
|
rm -rf /etc/nginx/http.d/auto-proxy*.conf /config/nginx/proxy-confs/auto-proxy*.conf
|
||||||
|
|||||||
@@ -5,8 +5,9 @@ if [ ! -f /usr/local/bin/docker ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -rf /config/nginx/proxy-confs/auto-proxy*.conf
|
rm -rf /etc/nginx/http.d/auto-proxy*.conf /config/nginx/proxy-confs/auto-proxy*.conf
|
||||||
cp /defaults/auto-proxy-readme /config/nginx/proxy-confs/auto-proxy-readme
|
sed -i 's|#include /etc/nginx/http.d|include /etc/nginx/http.d|' /config/nginx/nginx.conf
|
||||||
|
cp /defaults/auto-proxy-readme /etc/nginx/http.d/auto-proxy-readme
|
||||||
rm -rf /auto-proxy
|
rm -rf /auto-proxy
|
||||||
mkdir /auto-proxy
|
mkdir /auto-proxy
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user