Some checks failed
🚀 Build & Deploy Image / Determine Build Necessity (push) Failing after 10m14s
🚀 Build & Deploy Image / Build Runtime Base Image (push) Has been skipped
🚀 Build & Deploy Image / Build Docker Image (push) Has been skipped
🚀 Build & Deploy Image / Run Tests & Quality Checks (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Staging (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Production (push) Has been skipped
Security Vulnerability Scan / Check for Dependency Changes (push) Failing after 11m25s
Security Vulnerability Scan / Composer Security Audit (push) Has been cancelled
- Remove middleware reference from Gitea Traefik labels (caused routing issues) - Optimize Gitea connection pool settings (MAX_IDLE_CONNS=30, authentication_timeout=180s) - Add explicit service reference in Traefik labels - Fix intermittent 504 timeouts by improving PostgreSQL connection handling Fixes Gitea unreachability via git.michaelschiemer.de
145 lines
4.1 KiB
Markdown
145 lines
4.1 KiB
Markdown
# Betriebssystem-Auswahl f?r Production-Server
|
|
|
|
**Status**: ? Aktuell
|
|
**Empfehlung**: Ubuntu 22.04 LTS
|
|
**Letzte Aktualisierung**: 2025-01-XX
|
|
|
|
---
|
|
|
|
## Empfehlung: Ubuntu 22.04 LTS
|
|
|
|
### Warum Ubuntu?
|
|
|
|
1. **? Getestet und validiert**
|
|
- Alle Ansible-Playbooks sind mit Ubuntu 22.04 LTS getestet
|
|
- Docker-Install-Script ist f?r Ubuntu optimiert
|
|
|
|
2. **? LTS-Support**
|
|
- Support bis April 2027
|
|
- Regelm??ige Security-Updates
|
|
- Stabile Basis f?r Production
|
|
|
|
3. **? Docker-Kompatibilit?t**
|
|
- Offizielle Docker-Repositorys f?r Ubuntu
|
|
- Beste Performance und Kompatibilit?t
|
|
- Aktuelle Docker-Versionen verf?gbar
|
|
|
|
4. **? Dokumentation**
|
|
- Alle Guides und Scripts sind auf Ubuntu ausgelegt
|
|
- Weniger Anpassungen n?tig
|
|
|
|
5. **? Community & Support**
|
|
- Gro?e Community
|
|
- Viele Tutorials und L?sungen verf?gbar
|
|
- Einfacheres Troubleshooting
|
|
|
|
---
|
|
|
|
## Alternative: Debian 12
|
|
|
|
### Vor- und Nachteile
|
|
|
|
**Vorteile:**
|
|
- ? Minimaler Footprint (weniger Ressourcen)
|
|
- ? Sehr stabil und sicher
|
|
- ? L?ngere Release-Zyklen
|
|
- ? Open-Source pur (keine kommerziellen Komponenten)
|
|
|
|
**Nachteile:**
|
|
- ?? Docker-Install-Script muss angepasst werden
|
|
- ?? ?ltere Paket-Versionen (konservativer)
|
|
- ?? Weniger getestet mit diesem Setup
|
|
|
|
### Anpassungen f?r Debian 12
|
|
|
|
Falls Debian 12 verwendet werden soll, m?ssen folgende Anpassungen vorgenommen werden:
|
|
|
|
**1. Docker-Install-Script anpassen** (`deployment/ansible/playbooks/install-docker.yml`):
|
|
|
|
```yaml
|
|
# Zeile 25: Ubuntu ? Debian
|
|
- name: Add Docker GPG key
|
|
ansible.builtin.shell:
|
|
cmd: |
|
|
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
|
|
chmod a+r /etc/apt/keyrings/docker.asc
|
|
creates: /etc/apt/keyrings/docker.asc
|
|
|
|
# Zeile 32: Ubuntu ? Debian
|
|
- name: Add Docker repository
|
|
ansible.builtin.shell:
|
|
cmd: |
|
|
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
|
|
creates: /etc/apt/sources.list.d/docker.list
|
|
```
|
|
|
|
**2. OS-Detection in Playbooks pr?fen**
|
|
|
|
Die meisten Ansible-Roles verwenden `ansible_os_family == 'Debian'`, was f?r beide Systeme funktioniert. Aber spezifische Ubuntu-Checks m?ssen angepasst werden.
|
|
|
|
---
|
|
|
|
## Vergleich
|
|
|
|
| Kriterium | Ubuntu 22.04 LTS | Debian 12 |
|
|
|-----------|------------------|-----------|
|
|
| **Getestet** | ? Ja | ?? Teilweise |
|
|
| **Docker-Support** | ? Optimal | ?? Anpassung n?tig |
|
|
| **LTS-Support** | ? Bis 2027 | ? Bis 2029 |
|
|
| **Ressourcen** | ?? Mehr | ? Weniger |
|
|
| **Paket-Versionen** | ? Aktueller | ?? Konservativer |
|
|
| **Dokumentation** | ? Vollst?ndig | ?? Anpassung n?tig |
|
|
| **Community** | ? Gro? | ? Gro? |
|
|
| **Setup-Aufwand** | ? Minimal | ?? Anpassungen n?tig |
|
|
|
|
---
|
|
|
|
## Empfehlung f?r dieses Projekt
|
|
|
|
**Ubuntu 22.04 LTS** ist die beste Wahl, weil:
|
|
|
|
1. ? Alle Scripts und Playbooks sind darauf ausgelegt
|
|
2. ? Docker-Installation funktioniert out-of-the-box
|
|
3. ? Vollst?ndig getestet und dokumentiert
|
|
4. ? LTS-Support bis 2027 (ausreichend f?r Production)
|
|
5. ? Einfacheres Setup und Wartung
|
|
|
|
**Debian 12** ist m?glich, wenn:
|
|
- Minimaler Footprint wichtig ist
|
|
- Man bereit ist, das Docker-Install-Script anzupassen
|
|
- Man die l?ngere LTS-Periode (bis 2029) bevorzugt
|
|
|
|
---
|
|
|
|
## Migration zwischen Systemen
|
|
|
|
Falls sp?ter von Ubuntu zu Debian (oder umgekehrt) gewechselt werden soll:
|
|
|
|
1. **Backup erstellen**
|
|
- Datenbank-Dumps
|
|
- Docker-Volumes
|
|
- Konfigurationsdateien
|
|
|
|
2. **Server neu aufsetzen**
|
|
- Neues OS installieren
|
|
- Basis-Setup durchf?hren
|
|
|
|
3. **Ansible-Playbooks anpassen** (falls Debian)
|
|
- Docker-Install-Script anpassen
|
|
- OS-spezifische Checks pr?fen
|
|
|
|
4. **Infrastructure deployen**
|
|
- Via Ansible alle Stacks deployen
|
|
- Datenbank-Dumps wiederherstellen
|
|
- Volumes migrieren
|
|
|
|
---
|
|
|
|
## Fazit
|
|
|
|
F?r dieses Projekt: **Ubuntu 22.04 LTS** ist die empfohlene und getestete Wahl. Debian 12 ist m?glich, erfordert aber zus?tzliche Anpassungen.
|
|
|
|
**N?chste Schritte:**
|
|
- Server mit Ubuntu 22.04 LTS installieren
|
|
- Setup-Guide befolgen: `deployment/docs/guides/server-rebuild-plan.md`
|