Files
Tools/DEPLOY.md
T
Nirodan c95738d0a0
Build & Deploy / build (release) Has been cancelled
Migrate CI/CD from Gitea Registry to Docker Hub, remove Watchtower
- Switch runner to self-hosted
- Docker login and image paths now target docker.io / DEINUSERNAME
- Replace Watchtower with Unraid built-in container update
- Add section for external users pulling the public image
- Update .gitignore to exclude .claude/

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-22 09:17:38 +02:00

2.4 KiB
Raw Blame History

Deployment Guide

Voraussetzungen auf Unraid

  • Docker installiert
  • Gitea Act Runner läuft als Container (Label: self-hosted)

Einmalige Einrichtung

1. Gitea Secrets setzen

Im Repository unter Settings → Secrets folgende Secrets anlegen:

  • REGISTRY_USER dein Docker Hub Benutzername
  • REGISTRY_TOKEN ein Docker Hub Access Token (Docker Hub → Account Settings → Security → New Access Token)

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

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. App Container auf Unraid starten

Einmalig in Docker Hub einloggen damit Credentials gespeichert werden:

docker login docker.io

Container starten:

docker run -d \
  --name tools-app \
  --restart unless-stopped \
  -p 5000:5000 \
  --env-file .env \
  DEINUSERNAME/tools-app:latest

5. Auto-Update auf Unraid

Unraid hat ein eingebautes Update-Feature kein Watchtower nötig.

Docker-Tab → Container → Update-Symbol (↓) anklicken

Das zieht automatisch das neueste Image und startet den Container neu.

Release erstellen = Deployment auslösen

# 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 auf Docker Hub. Anschließend im Unraid Docker-Tab manuell auf Update klicken.

Rollback auf alte Version

In Unraid den Container stoppen und mit altem Tag neu starten:

docker stop tools-app
docker run -d \
  --name tools-app \
  --restart unless-stopped \
  -p 5000:5000 \
  --env-file .env \
  DEINUSERNAME/tools-app:v0.9.0

Nutzung durch andere

Das Image ist öffentlich auf Docker Hub verfügbar. Einfach pullen und starten:

docker pull DEINUSERNAME/tools-app:latest

docker run -d \
  --name tools-app \
  --restart unless-stopped \
  -p 5000:5000 \
  --env-file .env \
  DEINUSERNAME/tools-app:latest