# README ## Beschreibung Telefonbuch für MKN, in Go programmiert und als Podman-Container bereitgestellt. ## Features - Anmeldung an die Domäne AD/LDAP - Auslesen von Benutzern und Kontakten - Formatierung der Rufnummern - Ausgabe über internen Webserver in Go - Suche und Sortierung in JavaScript - Unterstützung für Benutzer und Kontakte aus dem Active Directory - Bereitstellung als Podman-Container ## Programmablauf 1. Start des Podman-Containers 2. Initialisierung der Go-Anwendung: - Laden der Umgebungsvariablen - Laden der YAML-Konfiguration - Laden des HTML-Templates 3. Start des HTTP-Servers 4. Periodische Aktualisierung des Caches im Hintergrund 5. Verarbeitung eingehender HTTP-Anfragen 6. Beenden der Anwendung bei Container-Stopp ## Installation und Konfiguration 1. Vorbereitung: - Stellen Sie sicher, dass Podman und podman-compose auf Ihrem System installiert sind. - Klonen Sie das Repository in ein lokales Verzeichnis. 2. Konfiguration: - Erstellen Sie eine `.env`-Datei im Projektverzeichnis mit folgenden Variablen: ``` LDAP_SERVER= BIND_DN= BIND_PASSWORD= SEARCH_BASE= ``` - Passen Sie die `config.yaml` im `static`-Verzeichnis nach Bedarf an. 3. Container bauen und starten: ``` podman-compose up -d ``` 4. Zugriff auf die Anwendung: Öffnen Sie einen Webbrowser und navigieren Sie zu `http://localhost:8082`. 5. Container stoppen: ``` podman-compose down ``` Für detailliertere Anweisungen, siehe MANUAL.md. ## Lizenz Entwickler: Steffen Probst E-Mail: [pts@mkn.de](mailto:pts@mkn.de) Dieses Projekt ist lizenziert unter der [GNU General Public License Version 3 (GPL-3.0)](https://www.gnu.org/licenses/gpl-3.0.html). ### Entwicklungsunterstützung Dieses Programm wurde mit Unterstützung von Claude.ai, einem KI-Assistenten entwickelt von Anthropic, PBC, erstellt. Claude.ai wurde für Code-Generierung, Problemlösung und Optimierung eingesetzt. Hinweis: Während Claude.ai bei der Entwicklung half, liegt das Urheberrecht des resultierenden Codes beim Autor, Steffen Probst. Claude.ai ist ein Werkzeug und beansprucht keine Rechte an dem erstellten Code.