Gitea ist eine kostenlose, leichte Plattform zum Hosten von Git-Repositories auf deinem eigenen Server, mit Pull Requests, Issues und Wiki. GitHub Team berechnet jedes weitere Konto in der Organisation, GitLab Premium tut dasselbe, und eine Agentur, die mehrere Kunden betreut, zahlt tatsächlich mehrmals für dasselbe Repository, weil jeder Kunde seine eigene Organisation haben möchte. Gitea ist ein Open-Source-Git-Server, den du auf deiner eigenen Box installierst und der dir einen Code-Browser, Pull Requests, Issues und ein Wiki für jedes Repository bietet, wobei die Anzahl der Benutzer und Repositories nichts kostet. Im Folgenden erfährst du Schritt für Schritt, wie du Gitea auf Saplo installierst.
Warum Gitea anstelle von GitHub oder GitLab
Deinen Code in einer fremden Cloud zu speichern, ist sinnvoll, solange das Team klein ist, aber die Kosten steigen mit der Anzahl der Konten:
- GitHub Team und GitLab Premium berechnen eine monatliche Gebühr pro Benutzer in der Organisation. Ein zusätzlicher Entwickler oder ein neuer Agenturkunde bedeutet also eine weitere Position auf der Rechnung, selbst wenn er das System nur einmal pro Woche nutzt.
- Private Kunden-Repositories, die in einer fremden Cloud gespeichert sind, bedeuten Daten außerhalb deiner Kontrolle, was bei Vertraulichkeitsvereinbarungen problematisch sein kann.
- Eine Agentur, die mehrere Kunden betreut, richtet für jeden eine separate Organisation ein, und jede Organisation ist ein separater Zähler für Plätze.
Gitea läuft als einzelner Docker-Container auf deiner Box, sodass du unbegrenzt viele Repositories erstellen kannst. Benutzerkonten werden vom Administrator manuell hinzugefügt, und die Gesamtkosten sind die Kosten der Box selbst, unabhängig davon, ob das Team zwei oder zwanzig Personen umfasst.
Gitea im Vergleich zu GitHub und GitLab
Alle drei bieten Code-Browser, Pull-Requests und Issue-Tracker. Der Unterschied liegt darin, wo die Daten gespeichert werden und welche Kosten mit jedem weiteren Konto verbunden sind:
- GitHub hat die größte Community und die meisten Integrationen, aber private Organisationen zahlen für jedes Konto und der Code der Kunden liegt auf Microsoft-Servern.
- GitLab fügt eine integrierte CI/CD-Funktion hinzu, allerdings auf Kosten eines noch höheren Ressourcenverbrauchs, wenn du es selbst hostest. Der Premium-Plan mit allen Funktionen berechnet ebenfalls eine Gebühr pro Benutzer.
- Gitea ist leichter als beide, startet als einzelner Container statt als ganzer Microservices-Stack, und du kannst unbegrenzt Repositories und Konten auf deiner eigenen Box erstellen.
Wenn ein Team oder eine Agentur keine integrierte CI/CD-Funktion oder eine riesige Community öffentlicher Projekte benötigt, sondern nur einen Ort für den Code der Kunden unter voller Kontrolle, passt Gitea am besten.
Anforderungen
Um Gitea auf Saplo zu installieren, benötigst du:
- Eine Box mit laufendem Docker (die Engine aktiviert ihn automatisch bei der Installation aus dem Katalog, das Nisten im Container ist erforderlich, was Saplo standardmäßig bietet),
- mindestens 512 MB freien RAM auf der Box und 5 GB Speicherplatz, d.h. der Box S Plan reicht aus,
- Eine Domain oder Subdomain
*.saploapp.pl, die in jedem Plan enthalten ist, unter der das Gitea-Panel laufen wird, - Eine separate Datenbank musst du NICHT manuell einrichten - die Engine erstellt automatisch eine MySQL-Datenbank und verbindet sie mit dem Container, genau wie bei WordPress oder Ghost.
Schritt-für-Schritt-Installation
- Gehe im Saplo-Panel zum App-Katalog und wähle Gitea (Kategorie „Business“).
- Wähle die Box mit mindestens 512 MB freiem RAM, auf der der Git-Server stehen soll, und die Domain oder Subdomain, unter der das Panel laufen wird.
- Bestätige die Installation. Die Engine erstellt einen Container aus dem offiziellen Image
gitea/gitea, richtet eine MySQL-Datenbank ein, überspringt den Web-Installationsassistenten und erstellt sofort ein Administratorkonto mit einem zufälligen Passwort, das mit nginx verbunden ist, welches das Panel unter der angegebenen Domain mit kostenlosem SSL bereitstellt. - Nach
docker compose upwartet die Engine, bis Gitea die Datenbankschema-Migration abgeschlossen hat, bevor versucht wird, ein Administratorkonto zu erstellen, und prüft, ob der Container tatsächlich läuft, bevor die Installation als abgeschlossen betrachtet wird. - Die Admin-Anmeldedaten (Benutzername, Passwort) werden in der Datei
GITEA-SETUP.txtim Anwendungsverzeichnis abgelegt.
Erste Konfiguration
- Gehe zu deiner Domain, zum Beispiel
kod.saploapp.pl, und melde dich mit dem Loginadminsowie dem Passwort aus der DateiGITEA-SETUP.txtan. - Ändere dein Passwort sofort nach dem ersten Login (Kontosymbol oben rechts, Einstellungen, Konto).
- Die öffentliche Registrierung ist deaktiviert - neue Benutzer fügst du manuell unter Site Administration, Users, Create User Account hinzu. Das ist ähnlich wie bei Ghost oder Listmonk, da es sich um ein privates Team-Tool und nicht um einen öffentlichen Dienst handelt.
- Erstelle dein erstes Repository (New Repository), klone es über die Domain via HTTPS und pushe deinen ersten Commit. Der integrierte SSH-Server ist deaktiviert, Klonen und Pushen funktionieren ausschließlich über HTTPS.
- Für Kunden-Repositories kannst du eine separate Organisation (Create Organization) erstellen und nur die Benutzer hinzufügen, die Zugriff haben sollen.
Gitea auf Saplo vs. GitHub Team und GitLab Premium
| GitHub Team | GitLab Premium | Gitea auf Saplo | |
|---|---|---|---|
| Gebühr für zusätzlichen Benutzer | Ja | Ja | Nein |
| Limit für private Repositories | Keines | Keines | Keines |
| Wo liegt der Code | Auf GitHub-Servern | Auf GitLab-Servern | Auf deiner Box |
| Integriertes CI/CD | GitHub Actions separat kostenpflichtig nach Limit | Ja, im Plan inbegriffen | Nein, separater Runner erforderlich |
| Kosten | Ab 4 USD pro Benutzer monatlich | Ab 29 USD pro Benutzer monatlich | Kosten der Box |
Häufig gestellte Fragen
Ist es möglich, Repositories über SSH zu klonen? Nein, der Zugriff auf Gitea auf Saplo erfolgt nur über HTTPS. Der integrierte SSH-Server ist deaktiviert, da Saplo den Port 22 für Client-Anwendungen nicht extern verfügbar macht.
Kann jeder selbst ein Konto erstellen? Nein, die öffentliche Registrierung ist deaktiviert. Neue Konten werden vom Administrator manuell im Bereich Site Administration erstellt.
Hat Gitea ein integriertes CI/CD wie GitLab? Nicht in dieser Installation. Gitea konzentriert sich auf Repositories, Pull-Requests, Issues und Wikis. Für die Build-Automatisierung ist ein separater Runner oder ein externes Tool erforderlich.
Können bestehende Repositories von GitHub oder GitLab migriert werden? Ja, Gitea verfügt über einen integrierten Repository-Importer, der eine URL verwendet. Gib einfach den Link zum Quell-Repository und die Zugangsdaten an, falls es privat ist.
Wenn dein Team oder deine Agentur heute für zusätzliche Konten bei GitHub oder GitLab bezahlt und die volle Kontrolle über den Code deiner Kunden haben möchte, kontaktiere uns. Wir helfen dir gerne, die passende Box für dein Team auszuwählen.
- #DevOps
- #Git
- #Gitea
- #Anleitung
