Gitea - leichtgewichtiges Git-Hosting für eigene Repos
Gitea - leichtgewichtiges Git-Hosting für eigene Repos
Gitea ist ein schlanker, in Go geschriebener Git-Server mit Web-Oberfläche, der GitHub-ähnliche Funktionen bei minimalem Ressourcenverbrauch selbst gehostet bereitstellt.
Was ist Gitea?
Gitea entstand als Fork von Gogs und bietet eine vollständige Git-Hosting-Plattform: Repositories, Issues, Pull-Requests, Wiki, CI/CD-Integration über Gitea Actions, Packages-Registry und Organisations-Management. Im Vergleich zu GitLab ist Gitea erheblich schlanker — der gesamte Server läuft als einzelne Go-Binary und benötigt schon ab 256 MB RAM produktiv. Das macht Gitea zur idealen Wahl für private Projekte, kleine Teams und Entwickler, die ein selbst gehostetes GitHub-Äquivalent ohne Overhead suchen.
Voraussetzungen
- Docker 20.10+ / Docker Compose
- Optional: PostgreSQL oder MySQL für produktive Umgebungen (SQLite für Einzel-Nutzer ausreichend)
Compose-Beispiel
services:
gitea:
image: gitea/gitea:latest
container_name: gitea
restart: unless-stopped
ports:
- "3000:3000"
- "2222:22"
volumes:
- ./data:/data
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=gitea-db:5432
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=sicheres_passwort
depends_on:
- gitea-db
gitea-db:
image: postgres:15-alpine
container_name: gitea-db
restart: unless-stopped
volumes:
- ./db:/var/lib/postgresql/data
environment:
- POSTGRES_DB=gitea
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=sicheres_passwort
Hinweise
- SSH-Port: Den SSH-Port 2222 auf dem Host freigeben, damit
git cloneper SSH funktioniert. In Gitea unter Site-Administration → Einstellungen → SSH-Server-Port auf 2222 setzen. - Registrierung deaktivieren: Für private Instanzen die öffentliche Registrierung unter Administration → Einstellungen → Dienste → Registrierung deaktivieren ausschalten.
- Gitea Actions: Als Alternative zu GitHub Actions können Workflows direkt in Gitea ausgeführt werden — dafür einen separaten Act-Runner-Container registrieren.
- Datensicherung: Das
data-Volume enthält Repositories, Attachments und die app.ini-Konfiguration — regelmäßig sichern.