Configure FQDN centrally via .env

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-02-15 12:24:42 +01:00
parent 7272017ff8
commit 397d8e7d29
5 changed files with 22 additions and 15 deletions

View File

@@ -1,16 +1,19 @@
#!/bin/sh
set -e
DOMAIN="location.butenostfreesen.de"
DOMAIN="${FQDN:-location.butenostfreesen.de}"
EMAIL="${CERTBOT_EMAIL:-}"
# FQDN in Config ersetzen
subst() { sed "s/__FQDN__/$DOMAIN/g" "$1"; }
# Entferne Standard-Config
rm -f /etc/nginx/conf.d/default.conf
# Bootstrap-Config verwenden, wenn Zertifikate noch nicht existieren
if [ ! -f "/etc/letsencrypt/live/${DOMAIN}/fullchain.pem" ]; then
echo "Zertifikate nicht gefunden. Starte mit Bootstrap-Config..."
cp /etc/nginx/templates/nginx-bootstrap.conf /etc/nginx/conf.d/default.conf
subst /etc/nginx/templates/nginx-bootstrap.conf > /etc/nginx/conf.d/default.conf
nginx -g "daemon off;" &
NGINX_PID=$!
@@ -29,10 +32,10 @@ if [ ! -f "/etc/letsencrypt/live/${DOMAIN}/fullchain.pem" ]; then
echo "Zertifikat erfolgreich erstellt. Starte nginx mit HTTPS..."
kill $NGINX_PID 2>/dev/null || true
sleep 2
cp /etc/nginx/templates/nginx.conf /etc/nginx/conf.d/default.conf
subst /etc/nginx/templates/nginx.conf > /etc/nginx/conf.d/default.conf
else
echo "Zertifikatsanforderung fehlgeschlagen. Laeufe mit HTTP (Port 80)."
echo "Stelle sicher, dass location.butenostfreesen.de auf diesen Server zeigt."
echo "Stelle sicher, dass ${DOMAIN} auf diesen Server zeigt."
exec wait $NGINX_PID
fi
else
@@ -41,7 +44,7 @@ if [ ! -f "/etc/letsencrypt/live/${DOMAIN}/fullchain.pem" ]; then
exec wait $NGINX_PID
fi
else
cp /etc/nginx/templates/nginx.conf /etc/nginx/conf.d/default.conf
subst /etc/nginx/templates/nginx.conf > /etc/nginx/conf.d/default.conf
fi
# Zertifikatserneuerung alle 12 Stunden im Hintergrund