# Deployment Guide ## Voraussetzungen auf Unraid - Docker installiert - Gitea Act Runner läuft als Container - Watchtower läuft als Container ## Einmalige Einrichtung ### 1. Gitea Secrets setzen Im Repository unter Settings → Secrets folgende Secrets anlegen: - `REGISTRY_USER` – dein Gitea Benutzername - `REGISTRY_TOKEN` – ein Gitea Access Token mit `packages` Berechtigung (Gitea → Einstellungen → Applications → Token erstellen) ### 2. Repository Actions aktivieren Im Repository unter Settings → "Enable Repository Actions" aktivieren. ### 3. Act Runner auf Unraid starten Token holen unter: https://git.nirodan.de/-/admin/actions/runners ```bash docker run -d \ --restart always \ --name gitea-runner \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /mnt/user/appdata/gitea-runner:/data \ -e GITEA_INSTANCE_URL=https://git.nirodan.de/ \ -e GITEA_RUNNER_REGISTRATION_TOKEN=DEIN_TOKEN \ -e GITEA_RUNNER_NAME=unraid-runner \ gitea/act_runner:latest ``` ### 4. Watchtower auf Unraid starten Einmalig in der Registry einloggen damit Credentials gespeichert werden: ```bash docker login git.nirodan.de ``` Watchtower starten: ```bash docker run -d \ --name watchtower \ --restart always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /root/.docker/config.json:/config.json \ containrrr/watchtower \ --interval 300 \ --cleanup \ tools-app ``` ### 5. App Container auf Unraid starten ```bash docker run -d \ --name tools-app \ --restart unless-stopped \ -p 5000:5000 \ --env-file .env \ git.nirodan.de/Nirodan/tools-app:latest ``` ## Release erstellen = Deployment auslösen ```bash # Tag erstellen und pushen git tag v1.0.0 git push origin v1.0.0 ``` Dann in Gitea: Repository → Releases → "New Release" → Tag auswählen → Publish Der Runner baut automatisch das Image und pusht es. Watchtower erkennt das neue Image innerhalb von 5 Minuten und startet den Container neu. ## Rollback auf alte Version In Unraid den Container stoppen und mit altem Tag neu starten: ```bash docker stop tools-app docker run -d \ --name tools-app \ --restart unless-stopped \ -p 5000:5000 \ --env-file .env \ git.nirodan.de/Nirodan/tools-app:v0.9.0 ```