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

97 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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
```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. App Container auf Unraid starten
Einmalig in Docker Hub einloggen damit Credentials gespeichert werden:
```bash
docker login docker.io
```
Container starten:
```bash
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
```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 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:
```bash
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:
```bash
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
```