Linux

So installieren Sie Gitea auf Ubuntu 20.04

So installieren Sie Gitea auf Ubuntu 20.04

Gitea ist ein schneller und einfach zu bedienender selbstgehosteter Git-Server, der in Go . geschrieben ist. Es enthält einen Repository-Dateieditor, Projektproblemverfolgung, Benutzerverwaltung, Benachrichtigungen, integriertes Wiki und vieles mehr.

Gitea ist eine leichte Anwendung und kann auf Systemen mit geringer Leistung installiert werden. Wenn Sie nach einer Alternative zu Gitlab mit viel geringerem Speicherbedarf suchen und nicht den ganzen Schnickschnack benötigen, den Gitlab bietet, dann sollten Sie Gitea ausprobieren.

Dieser Artikel erklärt, wie Sie Gitea unter Ubuntu 20 installieren und konfigurieren.04.

Voraussetzungen #

Gitea unterstützt SQLite, PostgreSQL und MySQL /MariaDB als Datenbank-Backends.

SQLite wird nur für kleine Installationen empfohlen. Größere Installationen sollten MySQL oder PostgreSQL verwenden.

Wir verwenden SQLite als Datenbank für Gitea. Wenn SQLite nicht auf Ihrem Ubuntu-System installiert ist, installieren Sie es, indem Sie die folgenden Befehle als sudo user eingeben:

sudo apt-Updatesudo apt install sqlite3

Gitea installieren #

Gitea bietet Docker-Images und kann aus dem Quellcode, binär und als Paket installiert werden. Wir werden Gitea von Binär installieren.

Git installieren #

Der erste Schritt besteht darin, Git auf Ihrem Server zu installieren:

sudo apt-Updatesudo apt installieren git

Überprüfen Sie die Installation, indem Sie die Git-Version anzeigen:

git --version
Git-Version 2.25.1 

Erstellen Sie einen Git-Benutzer #

Erstellen Sie einen neuen Systembenutzer, der die Gitea-Anwendung ausführt, indem Sie Folgendes eingeben:

sudo adduser \ --System \ --Shell /bin/bash \ --gecos 'Git-Versionskontrolle' \ --Gruppe \ --deaktiviert-Passwort \ --home /home/git \ git

Der obige Befehl erstellt einen neuen Benutzer und eine neue Gruppe namens git, und setze das Home-Verzeichnis auf /home/git. Die Ausgabe sieht in etwa wie folgt aus:

Hinzufügen des Systembenutzers 'git' (UID 112)… Hinzufügen einer neuen Gruppe 'git' (GID 118)… Hinzufügen eines neuen Benutzers 'git' (UID 112) mit der Gruppe 'git'… Erstellen eines Home-Verzeichnisses '/home/git'… 

Gitea-Binärdatei herunterladen #

Gehen Sie zur Gitea-Download-Seite und laden Sie die neueste Binärdatei für Ihre Architektur herunter. Zum Zeitpunkt des Schreibens ist die neueste Version 1.10.2. Wenn eine neue Version verfügbar ist, ändern Sie die AUSFÜHRUNG Variable im Befehl unten.

Benutzen wget um die Gitea-Binärdatei im herunterzuladen /tmp Verzeichnis:

VERSION=1.14.1sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/$VERSION/gitea-$VERSION-linux-amd64

Sie können die gitea binär von jedem Ort aus. Wir folgen der Konvention und verschieben die Binärdatei in die /usr/local/bin Verzeichnis:

sudo mv /tmp/gitea /usr/local/bin

Machen Sie die Binärdatei ausführbar:

sudo chmod +x /usr/local/bin/gitea

Führen Sie die folgenden Befehle aus, um die Verzeichnisse zu erstellen und die erforderlichen Berechtigungen und den Besitz festzulegen:

sudo mkdir -p /var/lib/gitea/custom,data,logsudo chown -R git:git /var/lib/gitea/sudo chmod -R 750 /var/lib/gitea/sudo mkdir /etc/giteasudo chown root:git /etc/giteasudo chmod 770 /etc/gitea

Die obige Verzeichnisstruktur wird von der offiziellen Gitea-Dokumentation empfohlen.

Die Berechtigungen der /etc/gitea Verzeichnis sind eingestellt auf 770 damit der Installationsassistent die Konfigurationsdatei erstellen kann. Sobald die Installation abgeschlossen ist, werden wir restriktivere Berechtigungen festlegen.

Erstellen Sie eine Systemd-Unit-Datei #

Wir werden Gitea als Systemdienst betreiben.

Laden Sie die Beispiel-Systemd-Unit-Datei in das . herunter /etc/systemd/system Verzeichnis, indem Sie Folgendes eingeben:

sudo wget https://raw.githubusercontent.com/go-gitea/gitea/main/contrib/systemd/gitea.service -P /etc/systemd/system/

Sie müssen die Datei nicht bearbeiten, sie ist so konfiguriert, dass sie unserem Setup entspricht.

Aktivieren und starten Sie den Gitea-Dienst:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Überprüfen Sie, ob Gitea ausgeführt wird:

sudo systemctl status gitea
● gitea.service - Gitea (Git mit einer Tasse Tee) Geladen: Geladen (/etc/systemd/system/gitea.Bedienung; aktiviert; Herstellervoreinstellung: aktiviert) Aktiv: aktiv (läuft) seit Do 2021-05-06 05:32:04 UTC; vor 7s Main PID: 77781 (gitea) Aufgaben: 6 (Limit: 470) Speicher: 130.6M CGroup: /system.Scheibe/Gite.service └─77781 /usr/local/bin/gitea web --config /etc/gitea/app.ini… 

Gitea konfigurieren #

Nachdem Gitea jetzt heruntergeladen und ausgeführt wurde, können wir die Installation über die Weboberfläche abschließen.

Gitea lauscht standardmäßig auf Verbindungen auf Port 3000 auf allen Netzwerkschnittstellen.

Wenn auf Ihrem Server eine UFW-Firewall läuft, müssen Sie den Gitea-Port öffnen open. So erlauben Sie den Verkehr auf dem Port 3000, geben Sie folgenden Befehl ein:

sudo ufw erlauben 3000/tcp

Öffne deinen Browser, tippe http://IHRE_DOMAIN_IR_IP:3000, und ein Bildschirm ähnlich dem folgenden wird angezeigt:

Datenbankeinstellungen:

Allgemeine Anwendungseinstellungen:

Sie können die Einstellungen jederzeit ändern, indem Sie die Gitea-Konfigurationsdatei bearbeiten.

Um die Installation zu starten, klicken Sie auf die Schaltfläche „Gitea installieren“.

Die Installation ist sofort. Nach Abschluss werden Sie zur Anmeldeseite weitergeleitet.

Klicken Sie auf „Konto erforderlich“? Jetzt registrieren." Verknüpfung. Der erste registrierte Benutzer wird automatisch der Admin-Gruppe hinzugefügt.

Ändern Sie die Berechtigungen der Gitea-Konfigurationsdatei auf schreibgeschützt mit:

sudo chmod 750 /etc/giteasudo chmod 640 /etc/gitea/app.ini

Das ist es. Gitea wurde auf Ihrem Ubuntu-Rechner installiert.

Konfigurieren von Nginx als SSL-Terminierungs-Proxy #

Dieser Schritt ist optional, wird aber dringend empfohlen. SSL-Beendigung bedeutet, dass Nginx als Vermittler zwischen der Gitea-Anwendung und den Webclients fungiert, sodass Sie über HTTPS auf Gitea zugreifen können.

Um Nginx als Reverse-Proxy zu verwenden, benötigen Sie eine Domain oder Subdomain, die auf die öffentliche IP Ihres Servers verweist. In diesem Beispiel verwenden wir git.Beispiel.com.

Installieren Sie zunächst Nginx und generieren Sie mithilfe der folgenden Anleitungen ein kostenloses Let's Encrypt SSL-Zertifikat:

Wenn Sie fertig sind, öffnen Sie Ihren Texteditor und bearbeiten Sie die Domänenserver-Blockdatei:

sudo nano /etc/nginx/sites-enabled/git.Beispiel.com
/etc/nginx/sites-enabled/git.Beispiel.com
Server  hören 80; server_name git.Beispiel.com; Snippets/letsencrypt einschließen.conf; 301 https://git . zurückgeben.Beispiel.com$request_uri;  server  hören 443 ssl http2; server_name git.Beispiel.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; client_max_body_size 50m; # Proxy-Header proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $schema; proxy_set_header X-Real-IP $remote_addr; # SSL-Parameter ssl_certificate /etc/letsencrypt/live/git.Beispiel.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/git.Beispiel.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/git.Beispiel.com/kette.pem; Snippets/letsencrypt einschließen.conf; Snippets/ssl einschließen.conf; # Protokolldateien access_log /var/log/nginx/git.Beispiel.com.Zugriff.Log; error_log /var/log/nginx/git.Beispiel.com.Error.Log; # Handle / fordert den Standort an /  proxy_redirect off; proxy_pass http://127.0.0.1:3000;   

Vergessen Sie nicht, git . zu ersetzen.Beispiel.com mit Ihrer Gitea-Domain und stellen Sie den richtigen Pfad zu den SSL-Zertifikatsdateien ein. Der HTTP-Verkehr wird auf HTTPS umgeleitet

Starten Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl Neustart nginx

Als nächstes ändern Sie die Gitea-Domain und die Root-URL. Öffnen Sie dazu die Konfigurationsdatei und bearbeiten Sie die folgenden Zeilen:

sudo nano /etc/gitea/app.ini
/etc/gitea/app.ini
[Server] DOMAIN = git.Beispiel.com ROOT_URL = https://git.Beispiel.com/ 

Starten Sie den Gitea-Dienst neu, indem Sie Folgendes eingeben:

sudo systemctl Neustart gitea

Zu diesem Zeitpunkt ist der Gitea-Proxy konfiguriert und Sie können darauf zugreifen unter: https://git.Beispiel.com

E-Mail-Benachrichtigungen konfigurieren #

Wenn Sie möchten, dass Ihre Gitea-Instanz Benachrichtigungs-E-Mails sendet, können Sie entweder Postfix installieren oder einen Transaktions-Mail-Dienst wie SendGrid, MailChimp, MailGun oder SES verwenden.

Um E-Mail-Benachrichtigungen zu aktivieren, öffnen Sie die Konfigurationsdatei und bearbeiten Sie die folgenden Zeilen:

sudo nano /etc/gitea/app.ini
/etc/gitea/app.ini
[mailer] ENABLED = true HOST = SMTP_SERVER:SMTP_PORT FROM = SENDER_EMAIL USER = SMTP_USER PASSWD = YOUR_SMTP_PASSWORD 

Stellen Sie sicher, dass Sie die richtigen SMTP-Serverinformationen eingeben.

Starten Sie den Gitea-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl Neustart gitea

Um die Einstellungen zu überprüfen und eine Test-E-Mail zu senden, melden Sie sich bei Gitea an und gehen Sie zu: Site-Administration > Konfiguration > SMTP-Mailer-Konfiguration.

Gitea ermöglicht es Ihnen auch, sich mit Slack zu verbinden, indem Sie einen Web-Webhook erstellen und Benachrichtigungen an Ihre Slack-Kanäle senden .

Gitea aktualisieren #

Um auf die neueste Gitea-Version zu aktualisieren, laden Sie einfach die Binärdatei herunter und ersetzen Sie sie.

  1. Stoppen Sie den Gitea-Dienst:

    sudo systemctl stop gitea
  2. Laden Sie die neueste Gitea-Version herunter und verschieben Sie sie in die /usr/local/bin Verzeichnis:

    VERSION=wget -O /tmp/gitea https://dl.gitea.io/gitea/$VERSION/gitea-$VERSION-linux-amd64sudo mv /tmp/gitea /usr/local/bin
  3. Machen Sie die Binärdatei ausführbar:

    sudo chmod +x /usr/local/bin/gitea
  4. Starten Sie den Gitea-Dienst neu:

    sudo systemctl Neustart gitea

Das ist es.

Fazit #

Dieses Tutorial führte Sie durch die Installation von Gitea auf Ubuntu 20.04. Weitere Informationen zum Konfigurieren Ihrer Gitea-Instanz und zum Erstellen Ihres ersten Projekts finden Sie auf der Gitea-Dokumentationsseite .

Wenn Sie Fragen haben, können Sie unten einen Kommentar hinterlassen.

So ändern Sie die Maus- und Touchpad-Einstellungen mit Xinput in Linux
Die meisten Linux-Distributionen werden standardmäßig mit der Bibliothek „libinput“ ausgeliefert, um Eingabeereignisse auf einem System zu verarbeiten...
Weisen Sie Ihre Maustasten mit der X-Mouse Button Control für verschiedene Software unterschiedlich zu
Vielleicht benötigen Sie ein Tool, mit dem sich die Steuerung Ihrer Maus bei jeder von Ihnen verwendeten Anwendung ändern kann. In diesem Fall können ...
Microsoft Sculpt Touch Wireless-Maus Bewertung
Ich habe vor kurzem gelesen, dass Microsoft Sculpt Touch kabellose Maus und beschloss, sie zu kaufen. Nachdem ich es eine Weile benutzt hatte, beschlo...