# RoggioApp - Infrastruktur: Gitea & Node.js Docker-Setup ## Die Notwendigkeit Projekte wie RoggioApp oder unser API-Server sollten nicht einfach per `nohup` oder in `tmux`-Sessions auf der Docker-VM laufen. Das ist fehleranfällig und schlecht wartbar. Zudem fehlt uns eine Versionskontrolle (Git) auf dem Server, um Code-Änderungen sicher nachverfolgen zu können, ohne Abhängigkeiten zu externen Anbietern (wie GitHub/GitLab) zu schaffen. ## Die Lösung: Das Infra-Compose-File Wir erweitern unsere Sandkiste (`192.168.20.252`) um ein sauberes Infrastruktur-Compose-Setup: ### 1. Gitea (Lokales GitHub) * *Warum:* Gitea ist extrem leichtgewichtig (geschrieben in Go), verbraucht kaum RAM und gibt uns eine professionelle Git-Oberfläche (Issues, Pull Requests, Code-Hosting) direkt im lokalen Netzwerk. * *Setup:* Ein Container in der Docker-VM. Wir erstellen einen NPM-Proxy (z.B. `git.h80.11112222.net`). ### 2. Node.js Production-Serving (PM2 im Docker) * *Warum:* Statt Node.js "nackt" auf dem Host (VM) laufen zu lassen, packen wir die Node.js-Applikationen in eigene Docker-Container. * *Wie:* Für Test-API-Server (wie `bookme`) schreiben wir kleine `Dockerfile`s, die den Code bauen und per Node starten. Diese Container hängen wir dann in das Netzwerk des Nginx Proxy Managers. ## Nächste Schritte 1. Eine `docker-compose.yml` für Gitea anlegen und starten. 2. Die Subdomain `git.h80.11112222.net` im Nginx Proxy Manager eintragen. 3. Das RoggioApp-Projekt als erstes Repo initialisieren.