Leser wie Sie helfen, MUO zu unterstützen. Wenn Sie über Links auf unserer Website einen Kauf tätigen, erhalten wir möglicherweise eine Affiliate-Provision. Weiterlesen.

Git ist ein Versionskontrollsystem, das von Softwareentwicklern, Programmierern und Bastlern verwendet wird, um an Open-Source-Projekten zusammenzuarbeiten und diese zu verbreiten. Mit Git können Sie Projekte jeder Größe handhaben, Codeänderungen und Zusammenführungen einspielen und Benutzern erlauben, Ihre Repositories auf ihre eigenen Computer zu klonen. Das Open-Source-Ökosystem läuft auf Git, und viele der auf MakeUseOf.com vorgestellten Projekte beinhalten die Verwendung von Ressourcen von GitHub. Mit Gitea können Sie Ihre eigenen voll funktionsfähigen Git-Repositories auf einem Raspberry Pi in Ihrem eigenen Zuhause hosten.

Warum Ihren eigenen Git-Dienst auf Raspberry Pi hosten, anstatt GitHub zu verwenden?

Mit 55 Millionen Nutzern GitHub ist das größte Repository für freie und Open-Source-Software auf der Erde, aber sein derzeitiger Eigentümer Microsoft ist nicht für die Rolle des Verwalters geeignet. Frühere CEOs des Unternehmens bezeichneten Linux und die General Public License als „ein Krebsgeschwür“, und die meisten eigenen Produkte von Microsoft sind proprietär und Closed Source.

Die Eigentümerschaft von Microsoft hat auch dazu geführt, dass GitHub einige ethisch zweifelhafte Technologien erforscht hat – insbesondere mit GitHub Copilot, einem KI-Tool, das Programmierern hilft, Code zu generieren. Copilot wurde mit Daten von GitHub trainiert, was möglicherweise gegen die Bedingungen der Creative Commons-Lizenzen verstößt, die von Programmierern verwendet werden.

Durch die Verwendung von GitHub schaffen Entwickler einen weiteren Engpass, an dem Innovationen erstickt, untergraben und leichtfertigen Eingriffen ausgesetzt werden können.

Mit Gitea können Sie Ihren eigenen Git-Server auf Raspberry Pi einrichten

Gitea ist ein Fork von Gogs und eine von der Community verwaltete, leichtgewichtige Code-Hosting-Lösung, die in Go geschrieben und unter der MIT-Lizenz veröffentlicht wurde. Es zielt auf ein offeneres und schnelleres Entwicklungsmodell als sein Vorgänger ab und wird auf Computern mit sogar bescheidenen Ressourcen wie einem Raspberry Pi ausgeführt. Sie können an Ihren Punktdateien arbeiten, benutzerdefinierte Ubuntu-ISOs, Bash-Skripte und Java- und Python-Dienstprogramme, ohne befürchten zu müssen, dass sie einer DMCA-Abschaltung unterliegen, zum Trainieren schändlicher Software verwendet werden oder anderweitig außerhalb Ihrer Kontrolle liegen.

So installieren Sie Gitea auf Ihrem Raspberry Pi

Gitea bietet mehrere Installationsmethoden, aber die einfachste ist über Docker. Wenn Sie diese nicht bereits auf Ihrem Raspberry Pi ausgeführt haben, Installieren Sie Docker und Docker Compose Jetzt.

Die Dateien, die Sie auf Ihrem Gitea-Server speichern, werden möglicherweise viel Speicherplatz beanspruchen, daher schlagen wir vor Verwendung eines externen Speichers mit Ihrem Raspberry Pi, und verwenden Sie diesen als Speicherort für Ihre Gitea-Installation.

Verbinden Sie sich über SSH mit Ihrem Pi, navigieren Sie dann zu dem Ort, an dem Sie Gitea installieren möchten, erstellen Sie ein neues Verzeichnis und wechseln Sie dann dorthin:

mkdir gitea
CD Gitea

Erstellen Sie eine neue Datei mit nano:

nanodocker-compose.yml

... und fügen Sie den folgenden Code ein:

Ausführung: "3"

Netzwerke:
Gitea:
extern: falsch

Dienstleistungen:
Server:
Bild: gitea/gitea: neueste
Containername: Gitea
Umfeld:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=db: 3306
- GITEA__database__NAME=gitea
- GITEA__database__USER=gitea
- GITEA__database__PASSWD=gitea
Neustart: immer
Netzwerke:
- Gitea
Volumen:
- ./gitea:/data
- /etc/timezone:/etc/timezone: gb
- /etc/localtime:/etc/localtime: gb
Häfen:
- "3000:3000"
- "222:22"
kommt drauf an:
-db

dB:
Bild: mysql: 8
Neustart: immer
Umfeld:
- MYSQL_ROOT_PASSWORD=gitea
- MYSQL_USER=gitea
- MYSQL_PASSWORD=gitea
- MYSQL_DATABASE=gitea
Netzwerke:
- Gitea
Volumen:
- ./mysql:/var/lib/mysql

Ändere die Zeitzonen auf dein eigenes Gebietsschema und wähle ein starkes Passwort für deine Datenbank, speichere dann und beende nano mit Strg + O, Dann Strg + X.

Eingeben:

docker-compose up -d

… um docker-compose im getrennten Modus aufzurufen. Docker-compose zieht mehrere Images für Gitea und Maria DB und richtet Container ein. Je nach Verbindungsgeschwindigkeit kann dies einige Zeit dauern.

Wenn Sie zur Eingabeaufforderung zurückkehren:

docker-compose ps

…sollte "gitea" und "gitea_db_1" als "up" anzeigen. Sie können jetzt die Erstkonfigurationsseite für Ihre Gitea-Site unter besuchen Ihre.pi.lokale.IP-Adresse: 3000.

Noch nichts ändern. Wenn Sie vorhaben, über das Internet auf Ihre Gitea-Instanz zuzugreifen, müssen Sie zunächst etwas mehr vorbereiten.

Greifen Sie über das Internet auf Ihre Gitea-Instanz zu

Sie möchten in der Lage sein, eine Standard-URL einzugeben, um Ihre Gitea-Instanz erreichen zu können, daher benötigen Sie Apache, um das Proxying zu handhaben. Installieren Sie Apache mit:

sudo apt Installieren apache2

Starten und aktivieren Sie nun Apache mit den folgenden Befehlen:

sudo systemctl Start apache2
sudo systemctl ermöglichen apache2

Aktivieren Sie die Proxy-Module von Apache mit:

sudo a2enmod Proxy
sudo a2enmod proxy_http

Wählen Sie einen Domainnamen oder Subdomainnamen aus von einem seriösen Registrar. Suchen Sie dann auf der Seite mit den Einstellungen Ihres Registrars die Optionen „Erweitertes DNS“ und fügen Sie eine neue hinzu A aufzeichnen. Stellen Sie die ein Gastgeber Feld zu "@" und das Wertfeld zu Ihrer statischen IP-Adresse. Stellen Sie den TTL-Wert (Time to Lease) so niedrig wie möglich ein und speichern Sie dann.

Öffnen Sie Ihre Router-Admin-Seite und suchen Sie einen Abschnitt mit dem Titel Entweder Port-Weiterleitung, Port-Mapping, oder Hafenverwaltung.

Erstellen Sie einen neuen Eintrag für HTTP-Anforderungen. Stellen Sie sowohl den lokalen als auch den öffentlichen Port auf ein 80, und die lokale IP-Adresse auf die IP-Adresse Ihres Raspberry Pi.

Für HTTPS-Anfragen ist ein zweiter offener Port erforderlich. Stellen Sie sowohl den lokalen als auch den öffentlichen Port auf ein 443, und wieder die lokale IP-Adresse zur IP-Adresse Ihres Pi.

Schließlich benötigen Sie einen offenen Port für SSH-Anfragen an Ihren Git-Server. Stellen Sie sowohl den lokalen als auch den öffentlichen Port auf ein 222, und die lokale IP-Adresse auf die IP-Adresse Ihres Pi.

Sie werden Certbot verwenden, um Sicherheitszertifikate und Schlüssel zu erhalten. Fügen Sie das Certbot-Repository hinzu, aktualisieren Sie und installieren Sie dann Certbot:

sudo add-apt-repository ppa: certbot/certbot
sudo apt aktualisieren
sudo apt-erhalten Installieren Sie python3-certbot-apache

Wechseln Sie die Verzeichnisse und erstellen Sie eine neue Datei mit nano:

CD /etc/apache2/sites-available/
nanoGitea.conf

Fügen Sie in der neuen Datei Folgendes ein und achten Sie darauf, Ihren eigenen Domainnamen einzufügen:

<VirtualHost *:80>ServerName ihr-domain-name.tldProxyPass / http://127.0.0.1:3000/ProxyPassReverse / http:/127.0.0.1:3000/ProxyPreserveHost Ein</VirtualHost>

Speichern und beenden Sie nano mit Strg + Ö, Dann Strg + X, und aktivieren Sie Ihre neue conf-Datei mit:

sudoa2ensiteGitea.conf

Apache neu starten:

sudo-Dienst apache2 neu starten

Führen Sie Certbot aus mit:

sudo certbot

…und wählen Sie Ihren Domainnamen aus einer Liste aus. Certbot ruft Zertifikate und Schlüssel ab und installiert sie. Wenn Sie zur Eingabeaufforderung zurückkehren, starten Sie Apache erneut:

sudo-Dienst apache2 neu starten

Einrichtung der Gitea-Instanz

Sie können Ihre Gitea-Instanz jetzt in einem Browser mit der Adresse besuchen https://your-domain-name.tld. Im ersten Abschnitt können Sie den Datenbanktyp, das Passwort und andere Variablen festlegen. Dies sind Werte, die Sie in Ihrer Docker-Compose-Datei angegeben haben, und sollten bereits ausgefüllt sein, sodass Sie sie nicht ändern müssen.

In Allgemeine Einstellungen, setzen Sie die Seitentitel zu einem passenden, Serverdomäne sollte Ihr Domainname sein und SSH-Server-Port muss eingestellt werden 222. Die Basis-URL sollte Ihr Domänenname einschließlich "HTTPS://" sein.

Wenn Sie fertig sind, schlagen Sie auf das große Blau Gitea installieren Taste. Sie werden von einer großen grünen Tasse Tee und dem Namen und der Schnecke begrüßt, die Sie der Instanz gegeben haben. Um Ihren ersten Benutzer zu erstellen, klicken Sie oben rechts auf der Seite auf Registrieren und geben Sie dann Ihre Daten ein. Glückwunsch!

Um andere daran zu hindern, sich zu registrieren und ihre eigenen Repositories auf Ihrem Git-Server zu hosten, müssen Sie die app.ini Datei. Wenn Sie ursprünglich Ihre erstellt haben Gitea Verzeichnis im / (Stamm-)Verzeichnis, geben Sie Folgendes ein:

nano /gitea/gitea/gitea/conf/app.ini

Scrollen Sie nach unten zum Servicebereich und stellen Sie ein REGISTRIERUNG DEAKTIVIEREN zu wahr.

Speichern und beenden Sie nano mit Strg + Ö, Dann Strg + X, Starten Sie dann Ihre Container neu:

docker-compose downdocker-compose up -d

Mit Gitea

Wenn Sie jemals GitHub verwendet haben, werden Sie sich in Gitea sofort zu Hause fühlen. Nachdem Sie sich angemeldet haben, sehen Sie, dass keine Repositories verfügbar sind. Erstellen Sie eine, indem Sie auf klicken + rechts auf der Seite unterschreiben und ihm einen sinnvollen Namen geben.

Sie können das Repository privat machen, indem Sie das Kontrollkästchen aktivieren, oder es offen lassen, damit die Welt es sehen kann. Aktivieren Sie das Kontrollkästchen, um mit einer Readme-Datei zu initialisieren, und klicken Sie dann auf Repository erstellen um Ihr erstes Repository zu erstellen! Sie können Änderungen vornehmen und übernehmen, Dateien hochladen und bearbeiten, als wäre es GitHub.

Klicke auf SSH um die Adresse zu kopieren, und Sie können keine Repositorys auf Ihren lokalen Computer klonen und erhalten stattdessen eine Fehlermeldung: „Bitte stellen Sie sicher, dass Sie die richtigen Zugriffsrechte haben und das Repository vorhanden ist“. Sie müssen zuerst den SSH-Schlüssel Ihres lokalen Computers zu Gitea hinzufügen. Kopieren Sie dazu die Ausgabe von:

Katze ~/.ssh/id_rsa.pub

Klicken Sie in Ihrer Gitea-Weboberfläche auf Ihr Profilbild und wählen Sie dann aus Einstellungen> SSH/GPG-Schlüssel. Klicke auf Schlüssel hinzufügen, und fügen Sie den soeben kopierten Schlüssel ein.

Sie können jetzt mit Ihrem eigenen Git-Repository auf Ihrem eigenen Git-Server auf Ihrem eigenen Raspberry Pi interagieren!

Verwenden Sie Ihre Gitea-Instanz, um großartige Softwareprojekte zu erstellen

Git ist ein großartiges Tool für die Zusammenarbeit an fantastischen Projekten, aber auch ohne Team ist es fantastisch, um Ihren eigenen Workflow zu organisieren und fantastische Software oder Konfigurationen zu erstellen. Verwenden Sie es, um den Überblick über Ihre Dateien zu behalten, während Sie eine neue Programmiersprache lernen, oder passen Sie Ihr Desktop-System so an, dass es das Beste ist, was es sein kann.