ci: Gitea Action für automatischen Docker-Build und Registry-Push hinzugefügt

This commit is contained in:
scriptos
2026-03-26 21:21:22 +01:00
parent 7bf847d31c
commit d77961818a
3 changed files with 45 additions and 3 deletions
+41
View File
@@ -0,0 +1,41 @@
name: Build & Push Docker Image
# Wird ausgeloest, wenn ein Tag wie "v1.3.0" gepusht wird
on:
push:
tags:
- 'v*'
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
# "v1.3.0" -> "1.3.0" (fuehrendes "v" entfernen)
- name: Version aus Tag extrahieren
id: version
run: |
VERSION=$(echo "${{ gitea.ref_name }}" | sed 's/^v//')
echo "VERSION=$VERSION" >> $GITHUB_OUTPUT
- name: Bei Gitea Registry einloggen
run: |
echo "${{ secrets.REGISTRY_TOKEN }}" | \
docker login git.techniverse.net \
--username "${{ secrets.REGISTRY_USER }}" \
--password-stdin
- name: Docker Image bauen
run: |
docker build \
-t git.techniverse.net/scriptos/trackmania-server:${{ steps.version.outputs.VERSION }} \
-t git.techniverse.net/scriptos/trackmania-server:latest \
.
- name: Docker Image pushen
run: |
docker push git.techniverse.net/scriptos/trackmania-server:${{ steps.version.outputs.VERSION }}
docker push git.techniverse.net/scriptos/trackmania-server:latest
+3
View File
@@ -47,6 +47,9 @@
│ │ └── teamspeak3.xml # TeamSpeak3-Konfiguration fuer XAseco
│ └── db/
│ └── init-xaseco-db.sh # MariaDB Init-Script fuer XAseco-DB
├── .gitea/
│ └── workflows/
│ └── docker-publish.yml # CI/CD: Docker Image Build & Push bei neuem Release-Tag
├── docs/ # Dokumentation
├── docker-compose.yml # Docker Compose Konfiguration
├── Dockerfile # Docker Build-Definition
+1 -3
View File
@@ -43,11 +43,9 @@ Die Konfiguration erfolgt über die `.env`-Datei, die automatisch eingelesen wir
Alternativ kannst du das Image auch selbst bauen:
```bash
docker build -t tmserver:latest -t tmserver:1.3.0 .
docker build -t tmserver:latest .
```
Damit wird das Image mit zwei Tags erstellt: `tmserver:latest` und `tmserver:1.3.0`.
Anschließend den Server starten:
```bash