entrypoint.sh aktualisiert

This commit is contained in:
2026-04-03 21:50:47 +00:00
parent 5ef6de93df
commit 77d2ac3881

View File

@@ -1,12 +1,14 @@
#!/bin/bash #!/bin/bash
set -e set -e
# Standardwerte setzen, falls beim Containerstart keine Variablen übergeben wurden # Mapping der Gitea-Workflow Variablen (ENV_...) auf interne Variablen
LDAP_URI=${LDAP_URI:-"ldap://10.0.2.123:389"} # Falls ENV_LDAP_URI nicht gesetzt ist, wird ein Fallback genutzt
LDAP_BASE_DN=${LDAP_BASE_DN:-"dc=pi-farm,dc=de"} LDAP_URI=${ENV_LDAP_URI:-"ldap://localhost:389"}
LDAP_BIND_DN=${LDAP_BIND_DN:-"cn=admin,dc=pi-farm,dc=de"} LDAP_BASE_DN=${ENV_LDAP_BASE_DN:-"dc=example,dc=com"}
LDAP_SUDO_GROUP=${LDAP_SUDO_GROUP:-"sudo_users"} LDAP_BIND_DN=${ENV_LDAP_BIND_DN:-"cn=admin,dc=example,dc=com"}
# LDAP_BIND_PASSWORD muss übergeben werden! LDAP_BIND_PASSWORD=${ENV_LDAP_BIND_PASSWORD:-"password"}
LDAP_SUDO_GROUP=${ENV_LDAP_SUDO_GROUP:-"sudo_users"}
SSSD_DEBUG=${ENV_SSSD_DEBUG_LEVEL:-0}
echo ">>> Erstelle SSSD Konfiguration..." echo ">>> Erstelle SSSD Konfiguration..."
cat <<EOF > /etc/sssd/sssd.conf cat <<EOF > /etc/sssd/sssd.conf
@@ -39,7 +41,6 @@ cache_credentials = true
enumerate = false enumerate = false
EOF EOF
# Rechte zwingend auf 600, sonst startet SSSD nicht
chmod 600 /etc/sssd/sssd.conf chmod 600 /etc/sssd/sssd.conf
chown root:root /etc/sssd/sssd.conf chown root:root /etc/sssd/sssd.conf
@@ -47,19 +48,14 @@ echo ">>> Erstelle Sudoers-Regel für Gruppe: ${LDAP_SUDO_GROUP}..."
echo "%${LDAP_SUDO_GROUP} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ldap-admins echo "%${LDAP_SUDO_GROUP} ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ldap-admins
chmod 0440 /etc/sudoers.d/ldap-admins chmod 0440 /etc/sudoers.d/ldap-admins
echo ">>> Leere alten SSSD Cache..." echo ">>> Bereinige SSSD Cache..."
rm -f /var/lib/sss/db/* rm -f /var/lib/sss/db/*
rm -f /var/lib/sss/mc/* rm -f /var/lib/sss/mc/*
echo ">>> Starte SSSD im Hintergrund..." echo ">>> Starte Dienste..."
# Wir starten SSSD als Hintergrunddienst (ohne interaktives Log-Spamming) # SSSD mit dem gemappten Debug-Level starten
sssd -D sssd -D --debug-level=${SSSD_DEBUG}
echo ">>> Starte XRDP..."
# dbus starten (oft wichtig für xfce im Container)
service dbus start service dbus start
# Startet den xrdp-sesman und anschließend xrdp im Vordergrund,
# damit der Container nicht stirbt
xrdp-sesman xrdp-sesman
exec xrdp -n exec xrdp -n