commit 2ca0648cddee697adbbf58bb91ed3e675c4822aa87656ee047f7d2531525529d Author: Axel Druschel Date: Sun Aug 3 12:07:20 2025 +0200 Add README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e00fbfa --- /dev/null +++ b/README.md @@ -0,0 +1,127 @@ +# KMU Server Infrastructure + +Dieses Repository verwaltet die komplette Infrastruktur-Konfiguration und -Dokumentation für die KMU-Organisation. + +## 📋 Übersicht + +Das `server-infra` Repository dient als zentrale Verwaltungseinheit für: +- Server-Konfigurationsdateien +- Automatisierungs- und Deployment-Skripte +- Infrastruktur-Dokumentation +- Service-Konfigurationen +- Systemd-Units und Service-Definitionen + +## 🏗️ Repository-Struktur + +``` +server-infra/ +├── README.md # Diese Datei +├── docs/ # Dokumentation +│ ├── architecture.md # System-Architektur +│ ├── network-layout.md # Netzwerk-Konfiguration +│ ├── installation.md # Installationsanleitungen +│ └── maintenance.md # Wartungshandbuch +├── scripts/ # Automatisierungs-Skripte +│ ├── backup/ # Backup-Skripte +│ ├── deployment/ # Deployment-Automatisierung +│ ├── monitoring/ # Überwachungs-Skripte +│ └── maintenance/ # Wartungs-Skripte +├── configs/ # Service-Konfigurationen +│ ├── gitea/ # Gitea-Konfiguration +│ ├── nginx/ # Nginx-Konfiguration +│ ├── postgresql/ # PostgreSQL-Konfiguration +│ └── ssl/ # SSL/TLS-Zertifikate (ohne Private Keys) +├── systemd/ # Systemd-Service-Units +│ └── services/ # Custom Service-Definitionen +├── ansible/ # Ansible-Playbooks (optional) +│ ├── playbooks/ # Ansible-Playbooks +│ ├── roles/ # Ansible-Rollen +│ └── inventory/ # Inventory-Dateien +└── .gitignore # Git-Ignore-Regeln +``` + +## 🚀 Erste Schritte + +### 1. Repository klonen +```bash +git clone https://git.gitcover.de/KMU/server-infra.git +cd server-infra +``` + +### 2. Dokumentation lesen +Beginnen Sie mit der Dokumentation im `docs/` Verzeichnis: +- **architecture.md**: System-Übersicht und Komponenten +- **installation.md**: Schritt-für-Schritt Installationsanleitung +- **maintenance.md**: Wartungs- und Update-Prozeduren + +### 3. Skripte verwenden +Alle Automatisierungs-Skripte befinden sich im `scripts/` Verzeichnis und sind nach Kategorien organisiert. + +## 🔧 Server-Spezifikationen + +- **Betriebssystem**: Ubuntu Server LTS (neueste Version) +- **Git-Server**: Gitea +- **Webserver**: Nginx +- **Datenbank**: PostgreSQL +- **Backup-Strategie**: Automatisierte tägliche Backups + +## ⚠️ Sicherheitshinweise + +**WICHTIG**: Dieses Repository enthält KEINE sensiblen Daten wie: +- Private SSH-Schlüssel +- Passwörter oder API-Keys +- Private SSL-Zertifikate +- Datenbank-Credentials + +Sensible Daten werden über Umgebungsvariablen oder externe Secret-Management-Systeme verwaltet. + +## 📚 Dokumentations-Index + +| Dokument | Beschreibung | +|----------|-------------| +| [Architecture](docs/architecture.md) | System-Architektur und Komponenten-Übersicht | +| [Network Layout](docs/network-layout.md) | Netzwerk-Konfiguration und Firewall-Regeln | +| [Installation Guide](docs/installation.md) | Komplette Installationsanleitung | +| [Maintenance Manual](docs/maintenance.md) | Wartung, Updates und Troubleshooting | + +## 🔄 Workflow und Versionierung + +### Branch-Strategie +- **main**: Produktive Konfiguration (nur getestete Änderungen) +- **development**: Entwicklungs- und Test-Konfigurationen +- **feature/[name]**: Feature-Branches für größere Änderungen + +### Commit-Konventionen +``` +[Typ]: Kurze Beschreibung + +Typen: +- feat: Neue Funktionalität oder Konfiguration +- fix: Fehlerbehebung +- docs: Dokumentations-Änderungen +- config: Konfigurationsanpassungen +- script: Skript-Änderungen oder -Ergänzungen +``` + +## 🤝 Beitragen + +1. **Branch erstellen**: `git checkout -b feature/neue-funktion` +2. **Änderungen committen**: `git commit -m "feat: Neue Konfiguration hinzugefügt"` +3. **Push**: `git push origin feature/neue-funktion` +4. **Pull Request erstellen** über die Gitea-Weboberfläche + +## 📞 Kontakt und Support + +- **Repository**: https://git.gitcover.de/KMU/server-infra +- **Organisation**: KMU +- **Maintainer**: [Ihr Name] + +## 📄 Lizenz + +Dieses Repository enthält interne Infrastruktur-Konfigurationen der KMU-Organisation. +Nicht für externe Verwendung bestimmt. + +--- + +**Letzte Aktualisierung**: $(date +"%Y-%m-%d") +**Version**: 1.0.0 \ No newline at end of file