GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie den Gitea-Git-Dienst unter Debian 11

Gitea ist ein kostenloser, quelloffener, selbst gehosteter und bekannter Git-Server, der in der Programmiersprache Go geschrieben ist. Es ist eine Versionskontrollplattform ähnlich wie Github. Es ist robust, skalierbar und bietet viele Funktionen, einschließlich Problem- und Zeitverfolgung, Repository-Verzweigung, Dateisperrung und Tagging, Zusammenführung und viele andere. Wenn Sie nach einem selbst gehosteten Git-Dienst suchen, ist Gitea wahrscheinlich die beste Option, die Sie verwenden können.

In diesem Tutorial zeige ich Ihnen, wie Sie Gitea unter Debian 11 installieren.

Voraussetzungen

  • Ein Server mit Debian 11.
  • Auf dem Server ist ein Root-Passwort konfiguriert.

MariaDB-Datenbank installieren und konfigurieren

Gitea verwendet MariaDB/MySQL als Datenbank-Backend. Der Datenbankserver muss also auf Ihrem Server installiert sein. Wenn es nicht installiert ist, können Sie es installieren, indem Sie den folgenden Befehl ausführen:

apt-get install mariadb-server -y

Sobald die MariaDB installiert ist, müssen Sie ein MariaDB-Passwort festlegen und die Installation sichern. Sie können dies tun, indem Sie das Skript mysql_secure_installation ausführen:

mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

Aktuelles Passwort für root eingeben (Eingabe für keins):OK, Passwort erfolgreich verwendet, weiter geht's... Root-Passwort setzen? [Y/n] YAnonyme Benutzer entfernen? [J/n] YRoot-Anmeldung aus der Ferne verbieten? [J/n] YTestdatenbank und Zugriff darauf entfernen? [J/n] YBerechtigungstabellen jetzt neu laden? [J/n] Ja

Verbinden Sie sich als Nächstes mit dem folgenden Befehl mit der MariaDB-Schnittstelle:

mysql -u root -p

Sobald Sie verbunden sind, erstellen Sie mit dem folgenden Befehl eine Datenbank und einen Benutzer für Gitea:

MariaDB [(keine)]> CREATE DATABASE gitea;
MariaDB [(keine)]> GEWÄHREN SIE ALLE PRIVILEGIEN AUF gitea.* AN 'gitea'@'localhost' IDENTIFIED BY 'password';

Leeren Sie als Nächstes die Berechtigungen und beenden Sie die MariaDB mit dem folgenden Befehl:

MariaDB [(keine)]> FLUSH PRIVILEGES;
MariaDB [(keine)]> QUIT;

Gitea installieren

Zuerst müssen Sie einen dedizierten Benutzer erstellen, um Gitea auszuführen. Sie können es mit dem folgenden Befehl erstellen:

adduser --system --shell /bin/bash --gecos 'Git-Versionskontrolle' --group --disabled-password --home /opt/git git

Sie sollten die folgende Ausgabe sehen:

Systembenutzer `git' hinzufügen (UID 109) ...Neue Gruppe `git' hinzufügen (GID 115) ...Neuen Benutzer `git' (UID 109) mit Gruppe `git' hinzufügen ...Home-Verzeichnis erstellen `/opt/git' ...

Laden Sie als Nächstes die neueste Version von Gitea mit dem folgenden Befehl herunter:

curl -s https://api.github.com/repos/go-gitea/gitea/releases/latest |grep browser_download_url | cut -d '"' -f 4 | grep '\linux-amd64$' | wget -i -

Verschieben Sie als Nächstes die Gitea-Binärdatei mit dem folgenden Befehl in den Systempfad:

mv gitea-*-linux-amd64 /usr/local/bin/gitea

Legen Sie als Nächstes die ausführbare Berechtigung für die Gitea-Binärdatei fest:

chmod +x /usr/local/bin/gitea

Überprüfen Sie als Nächstes die Gitea-Version mit dem folgenden Befehl:

gitea --version

Sie sollten die folgende Ausgabe sehen:

Gitea Version 1.15.3 erstellt mit GNU Make 4.1, go1.16.8 :bindata, sqlite, sqlite_unlock_notify

Als nächstes müssen Sie eine Verzeichnisstruktur für Gitea erstellen. Sie können es mit dem folgenden Befehl erstellen:

mkdir -p /etc/gitea /var/lib/gitea/{custom,data,indexers,public,log}

Legen Sie als Nächstes die richtige Berechtigung und den Besitz mit dem folgenden Befehl fest:

chown git:git /var/lib/gitea/{data,indexers,log}
chmod 750 /var/lib/gitea/{data,indexers,log}
chown root:git / etc/gitea
chmod 770 /etc/gitea

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Erstellen Sie eine Systemd-Dienstdatei für Gitea

Als nächstes müssen Sie eine systemd-Dienstdatei für Gitea erstellen. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/systemd/system/gitea.service

Fügen Sie die folgenden Zeilen hinzu:

[Unit]Description=Gitea (Git mit einer Tasse Tee)After=syslog.targetAfter=network.targetAfter=mysql.service[Service]LimitMEMLOCK=infinityLimitNOFILE=65535RestartSec=2sType=simpleUser=gitGroup=gitWorkingDirectory=/var/ lib/gitea/ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.iniRestart=alwaysEnvironment=USER=git HOME=/opt/git GITEA_WORK_DIR=/var/lib/gitea[Install]WantedBy=multi-user.target

Speichern und schließen Sie die Datei und laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Als nächstes starten und aktivieren Sie den Gitea-Dienst mit dem folgenden Befehl:

systemctl start gitea
systemctl aktiviert gitea

Führen Sie den folgenden Befehl aus, um den Gitea-Dienst zu überprüfen:

Systemctl-Status-Gitea

Sie sollten die folgende Ausgabe sehen:

? gitea.service - Gitea (Git with a cup of tea) Geladen:geladen (/etc/systemd/system/gitea.service; deaktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Sa 2021-10-02 12:59:27 UTC; vor 9s Main PID:19179 (gitea) Tasks:8 (limit:4679) Memory:128.3M CPU:1.415s CGroup:/system.slice/gitea.service ??19179 /usr/local/bin/gitea web -c / etc/gitea/app.iniOct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 cmd/web.go:102:runWeb() [I] Starten von Gitea auf PID:19179Oct 02 12:59:28 debian11 gitea[19179]:02.10.2021 12:59:28 ...s/setting/setting.go:569:NewContext() [W] Benutzerdefinierte Konfiguration '/etc/gitea/app. ini' not>Oct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 ...s/install/setting.go:21:PreloadSettings() [I] AppPath:/usr /local/bin/giteaOct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 ...s/install/setting.go:22:PreloadSettings() [I] AppWorkPath:/ var/lib/giteaOct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 ...s/install/setting.go:23:PreloadSettings() [I] Benutzerdefinierter Pfad:/ var/lib/gitea/customOct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 ...s/install/setting.go:24:PreloadSettings() [I] Protokollpfad :/var/ lib/gitea/logOct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 ...s/install/setting.go:25:PreloadSettings() [I] Vorbereiten der Ausführung von install pageOct 02 12:59:28 debian11 gitea[19179]:2021/10/02 12:59:28 ...s/install/setting.go:28:PreloadSettings() [I] SQLite3 SupportedOct 02 12:59:29 debian11 gitea[19179]:2021/10/02 12:59:29 cmd/web.go:196:listen() [I] Listen:http://0.0.0.0:3000Oct 02 12:59:29 debian11 gitea[ 19179]:02.10.2021 12:59:29 ...s/graceful/server.go:62:NewServer() [I] Neuen Webserver starten:tcp:0.0.0.0:300>

An diesem Punkt wird Gitea gestartet und lauscht auf Port 3000. Sie können dies mit dem folgenden Befehl überprüfen:

ss -antpl | grep 3000

Sie sollten die folgende Ausgabe sehen:

LISTEN 0 4096 *:3000 *:* Benutzer:(("gitea",pid=19179,fd=6))

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Nginx für Gitea konfigurieren

Als nächstes müssen Sie Nginx als Reverse-Proxy für Gitea installieren und konfigurieren. Installieren Sie zuerst Nginx mit dem folgenden Befehl:

apt-get install nginx -y

Erstellen Sie als Nächstes mit dem folgenden Befehl eine Konfigurationsdatei für den virtuellen Nginx-Host:

nano /etc/nginx/conf.d/gitea.conf

Fügen Sie die folgenden Zeilen hinzu:

server {listen 80; server_name gitea.example.com; access_log /var/log/nginx/gitea_access.log; error_log /var/log/nginx/gitea_error.log; Standort / { Proxy_Pass http://localhost:3000; }}

Speichern und schließen Sie die Datei und überprüfen Sie dann Nginx auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe sehen:

nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich

Starten Sie als Nächstes den Nginx-Dienst mit dem folgenden Befehl neu:

systemctl startet nginx neu

Führen Sie den folgenden Befehl aus, um den Nginx-Status zu überprüfen:

systemctl status nginx

Sie sollten die folgende Ausgabe sehen:

? nginx.service - Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server Geladen:geladen (/lib/systemd/system/nginx.service; aktiviert; Herstellervoreinstellung:aktiviert) Aktiv:aktiv (läuft) seit Sa 2021-10-02 13 :00:33 UTC; vor 4s Dokumente:man:nginx(8) Prozess:19209 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process an; (code=beendet, status=0/SUCCESS) Prozess:19211 ExecStart=/usr/sbin/nginx -g daemon on; master_process an; (code=exited, status=0/SUCCESS) Main PID:19212 (nginx) Tasks:3 (limit:4679) Memory:3.2M CPU:50ms CGroup:/system.slice/nginx.service ??19212 nginx:master process /usr/sbin/nginx -g Daemon an; master_process an; ??19213 Nginx:Arbeitsprozess 1]:Gestartet Ein Hochleistungs-Webserver und ein Reverse-Proxy-Server.

Als Nächstes müssen Sie die Gitea-Datei app.ini bearbeiten und Ihre Domäneninformationen definieren:

nano /etc/gitea/app.ini

Ändern Sie die folgenden Zeilen:

DOMAIN =gitea.example.comROOT_URL =http://gitea.example.com/

Speichern und schließen Sie die Datei und starten Sie dann den Gitea-Dienst neu, um die Änderungen zu übernehmen:

systemctl startet Gitea neu

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Zugriff auf die Gitea-Weboberfläche

Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://gitea.example.com auf die Gitea-Weboberfläche zu . Sie werden auf die folgende Seite weitergeleitet:

Geben Sie Ihre Gitea-Datenbankinformationen, URL, Admin-Benutzernamen, Passwort und Port an und klicken Sie auf Installieren Gitea Taste. Sie sollten das Gitea-Dashboard auf der folgenden Seite sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben Gitea erfolgreich mit Nginx als Reverse-Proxy auf Debian 11 installiert. Sie können Gitea in Ihrer Entwicklungsumgebung implementieren, um Ihr Projekt zu verfolgen und zu verwalten.


Debian
  1. So installieren Sie Apache ZooKeeper unter Debian 10

  2. So installieren Sie osquery unter Debian 10

  3. So installieren Sie WildFly unter Debian 11

  4. So installieren Sie Gitea unter Debian 9

  5. So installieren Sie Suricata unter Debian 11

So installieren Sie Icinga 2 auf Debian 8

So installieren Sie Git unter Debian 9 Stretch

So installieren Sie Git unter Debian 10

So installieren Sie Gitea unter Debian 10

So installieren Sie Gitea unter Debian 11

Wie installiere ich Git unter Debian 10?