c95738d0a0
Build & Deploy / build (release) Has been cancelled
- 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>
97 lines
2.4 KiB
Markdown
97 lines
2.4 KiB
Markdown
# 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
|
||
```
|