# electric-horses-infra **Infrastructure as Code** für Electric Horses / Richter & Zech. Dieses Repository enthält die versionierten Docker-Compose-Stacks, Reverse-Proxy-Configs, Architektur-Dokumentation und Architecture Decision Records (ADRs) für unsere Hetzner-Cloud-Infrastruktur. ## Was lebt hier? ``` electric-horses-infra/ ├── Agent.md # AI-Briefing für jede Session ├── README.md # diese Datei ├── .gitignore # was NICHT commitet wird │ ├── stacks/ # Docker-Compose Stacks (1:1 was auf den Servern läuft) │ ├── forgejo/ # code.sdda.eu — dieses Git-Hosting │ └── eh-search/ # electric-horses.de Site-Search │ └── docs/ # Dokumentation └── architecture/ # Topologie-Snapshots, Stack-Inventories ``` **Konvention:** Jeder Stack-Ordner spiegelt den Stack auf dem tatsächlichen Server — aber ohne Secrets. Die `.env` mit echten Werten lebt auf dem Server (mode 600), hier ist nur die `.env.example` als Template. ## Was gehört hier REIN - `docker-compose.yml` Dateien - `Dockerfile`s - Nginx-Configs - Python / Shell Scripts die Teil der Infra sind - SQL-Migrationen / Schema-Dumps (nicht Datenbank-Inhalte!) - `.env.example` mit Platzhaltern - Markdown-Dokumentation, Diagramme (Mermaid), ADRs, Runbooks ## Was gehört hier NICHT REIN - **Niemals** echte `.env` Dateien, Passwörter, API-Keys, Zertifikate - Runtime-Daten (Datenbank-Inhalte, Git-Repos im Git-Repo, uploaded files) - Build-Artefakte (`node_modules/`, `dist/`, `__pycache__/`) - Logs - Backup-Dumps mit Nutzerdaten (DSGVO) Wenn du unsicher bist: Lass es lieber raus. Es ist einfacher eine fehlende Datei nachzureichen als ein Secret aus der Git-History zu entfernen. ## Mitarbeit **Du als Human:** Du schreibst Wünsche und Feedback in Claude-Code / OpenProject, reviewst Commits im Web-UI (code.sdda.eu). **Die AI:** Liest `Agent.md` am Sessionstart, macht Änderungen in bestehenden Stacks, committet mit Referenzen auf OpenProject-Work-Packages (`Refs OP#1234`). ## OpenProject Referenz - **Parent-Phase:** M7 Operations & Documentation Foundation (#1118) - **Repo-Setup:** M7.2 (dieser Commit) - Nachschauen: https://openproject.sdda.eu/projects/www-dot-electric-horses-dot-de-relaunch/