GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren Sie Gitea unter CentOS 8

Gitea ist ein selbst gehosteter Open-Source-Git-Server, der in Go geschrieben wurde. Es kommt mit einem Repository-Dateieditor, Projektproblemverfolgung, Benutzerverwaltung, Benachrichtigungen, integriertem Wiki und vielem mehr.

Gite ist eine leichtgewichtige Anwendung und kann auf weniger leistungsstarken Systemen installiert werden. Wenn Sie nach einer Gitlab-Alternative mit viel geringerem Speicherbedarf suchen und nicht den ganzen Schnickschnack benötigen, den Gitlab bietet, sollten Sie Gitea ausprobieren.

Dieser Artikel zeigt Ihnen, wie Sie Gitea unter CentOS 8 installieren und konfigurieren.

Voraussetzungen #

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

Wir verwenden SQLite. Es ist eine leichtgewichtige Datenbank, die Daten in einer einzigen Datei speichert. Wenn SQLite nicht auf Ihrem CentOS-Computer installiert ist, können Sie es installieren, indem Sie den folgenden Befehl als sudo-Benutzer ausführen:

sudo dnf install sqlite

Wir gehen davon aus, dass SELinux entweder deaktiviert oder auf den zulässigen Modus eingestellt ist.

Installieren von Gitea #

Gitea kann aus dem Quellcode, binär und als Paket installiert werden. Es kann auch als Docker-Image bereitgestellt werden. Wir installieren Gitea mit der Binärdatei.

Installieren Sie Git #

Der erste Schritt besteht darin, Giton auf Ihrem CentOS zu installieren:

sudo dnf install git

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

git --version
git version 2.18.4

Erstelle einen Git-Benutzer #

Erstellen Sie einen neuen Systembenutzer, um die Gitea-Anwendung auszuführen:

sudo useradd \   --system \   --shell /bin/bash \   --comment 'Git Version Control' \   --create-home \   --home /home/git \   git

Der Befehl erstellt einen neuen Benutzer und eine neue Gruppe mit dem Namen git , und legen Sie das Home-Verzeichnis auf /home/git fest .

Gitea-Binärdatei # herunterladen

Die neueste Gitea-Binärdatei kann von der Gitea-Download-Seite heruntergeladen werden. Stellen Sie sicher, dass Sie die richtige Binärdatei für Ihre Architektur herunterladen.

Zum Zeitpunkt des Schreibens ist die neueste Version 1.12.3. Wenn eine neue Version verfügbar ist, ändern Sie die VERSION Variable im folgenden Befehl.

Verwenden Sie wget um die Gitea-Binärdatei in /tmp herunterzuladen Verzeichnis:

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

Sie können die Binärdatei von jedem Ort aus ausführen. Wir folgen der Konvention und verschieben die Binärdatei nach /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

Die folgenden Befehle erstellen die erforderlichen Verzeichnisse und legen die erforderlichen Berechtigungen und Eigentumsrechte fest:

sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}sudo chown git: /var/lib/gitea/{data,indexers,log}sudo chmod 750 /var/lib/gitea/{data,indexers,log}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 Datei /etc/gitea Verzeichnis sind auf 770 gesetzt damit der Installationsassistent die Konfigurationsdateien erstellen kann. Sobald die Installation abgeschlossen ist, werden wir restriktivere Berechtigungen festlegen.

Erstellen Sie eine Systemd-Unit-Datei #

Gitea stellt eine Systemd-Unit-Datei bereit, die so konfiguriert ist, dass sie unserem Setup entspricht.

Laden Sie die Datei in /etc/systemd/system/ herunter Verzeichnis durch Eingabe von:

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

Wenn Sie fertig sind, aktivieren und starten Sie den Gitea-Dienst:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Überprüfen Sie, ob der Dienst erfolgreich gestartet wurde:

sudo systemctl status gitea
● gitea.service - Gitea (Git with a cup of tea)
   Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2020-01-04 21:27:23 UTC; 3s ago
 Main PID: 14804 (gitea)
    Tasks: 9 (limit: 1152)
   CGroup: /system.slice/gitea.service
           └─14804 /usr/local/bin/gitea web --config /etc/gitea/app.ini
...

Gitea konfigurieren #

Jetzt, da Gitea betriebsbereit ist, ist es an der Zeit, die Installation über die Weboberfläche abzuschließen.

Standardmäßig wartet Gitea auf Port 3000 auf Verbindungen auf allen Netzwerkschnittstellen. Sie müssen Ihre Firewall konfigurieren, um den Zugriff auf die Gitea-Weboberfläche zu ermöglichen:

sudo firewall-cmd --permanent --zone=public --add-port=3000/tcpsudo firewall-cmd --reload

Öffnen Sie Ihren Browser und geben Sie http://YOUR_DOMAIN_IR_IP:3000/install ein , und die anfängliche Konfigurationsseite wird angezeigt:

Füllen Sie die erforderlichen Felder wie folgt aus:

Datenbankeinstellungen:

  • Datenbanktyp:SQLite3
  • Pfad:Verwenden Sie einen absoluten Pfad, /var/lib/gitea/data/gitea.db

Allgemeine Anwendungseinstellungen:

  • Site-Titel – Geben Sie den Namen Ihrer Organisation ein.
  • Repository-Stammpfad – Übernehmen Sie die Standardeinstellung /home/git/gitea-repositories .
  • Git-LFS-Stammpfad – Übernehmen Sie den Standardwert /var/lib/gitea/data/lfs .
  • Als Benutzername ausführen – git
  • SSH-Serverdomäne - Geben Sie Ihre Domäne oder Server-IP-Adresse ein.
  • SSH-Port - 22, ändern Sie ihn, wenn SSH auf einem anderen Port lauscht
  • Gitea HTTP Listen Port – 3000
  • Gitea-Basis-URL - Verwenden Sie http und Ihre Domain- oder Server-IP-Adresse.
  • Protokollpfad – Übernehmen Sie den Standardwert /var/lib/gitea/log
Später können Sie die Einstellungen ändern, indem Sie die Gitea-Konfigurationsdatei bearbeiten.

Wenn Sie fertig sind, klicken Sie auf die Schaltfläche „Gitea installieren“. Die Installation erfolgt sofort. Wenn Sie fertig sind, werden Sie zur Anmeldeseite weitergeleitet.

Klicken Sie auf den Link „Jetzt anmelden“. Der erste registrierte Benutzer wird automatisch zur Admin-Gruppe hinzugefügt.

Um die Installation sicherer zu machen, ändern Sie die Berechtigungen der Gitea-Konfigurationsdatei in schreibgeschützt mit:

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

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

Konfigurieren von Nginx als SSL-Terminierungsproxy #

Dieser Schritt ist optional, wird aber dringend empfohlen. Um Nginx als Reverse-Proxy zu verwenden, benötigen Sie eine Domain oder Subdomain, die auf die öffentliche IP Ihres Servers verweist. In diesem Tutorial verwenden wir git.example.com .

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

  • So installieren Sie Nginx unter CentOS 8
  • Nginx mit Let’s Encrypt auf CentOS 8 sichern

Sobald Sie fertig sind, öffnen Sie Ihren Texteditor und bearbeiten Sie die Blockdatei des Domänenservers:

sudo nano /etc/nginx/conf.d/git.example.com.conf
/etc/nginx/conf.d/git.example.com.conf
server {
    listen 80;
    server_name git.example.com;

    include snippets/letsencrypt.conf;
    return 301 https://git.example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name git.example.com;

    proxy_read_timeout 720s;
    proxy_connect_timeout 720s;
    proxy_send_timeout 720s;

    client_max_body_size 50m;

    # Proxy headers
    proxy_set_header X-Forwarded-Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    proxy_set_header X-Real-IP $remote_addr;

    # SSL parameters
    ssl_certificate /etc/letsencrypt/live/git.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/git.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/git.example.com/chain.pem;
    include snippets/letsencrypt.conf;
    include snippets/ssl.conf;

    # log files
    access_log /var/log/nginx/git.example.com.access.log;
    error_log /var/log/nginx/git.example.com.error.log;

    # Handle / requests
    location / {
       proxy_redirect off;
       proxy_pass http://127.0.0.1:3000;
    }
}

Vergessen Sie nicht, git.example.com durch Ihre Gitea-Domain zu ersetzen und den richtigen Pfad zu den SSL-Zertifikatsdateien festzulegen. Der HTTP-Datenverkehr wird auf HTTPS umgeleitet.

Wenn Sie fertig sind, starten Sie den Nginx-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart nginx

Ändern Sie als Nächstes die Gitea-Domäne und die Stamm-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.example.com
ROOT_URL         = https://git.example.com/

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

sudo systemctl restart gitea

An diesem Punkt ist der Gitea-Proxy konfiguriert und Sie können darauf zugreifen unter:https://git.example.com

E-Mail-Benachrichtigungen konfigurieren #

Für die zu versendenden Benachrichtigungs-E-Mails 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 verwenden.

Jedes Mal, wenn Sie die app.ini bearbeiten Datei müssen Sie den Gitea-Dienst neu starten, damit die Änderungen wirksam werden:

sudo systemctl restart 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.

Aktualisiere Gitea #

Ein Upgrade auf die neueste Gitea-Version ist eine einfache Aufgabe. Sie müssen nur die Binärdatei herunterladen und ersetzen.

  1. Stoppen Sie den Gitea-Dienst:

    sudo systemctl stop gitea
  2. Laden Sie die neueste Gitea-Binärdatei herunter und verschieben Sie sie nach /usr/local/bin Verzeichnis:

    VERSION=<THE_LATEST_GITEA_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 restart gitea

Das ist es.


Cent OS
  1. So installieren Sie Vagrant unter CentOS 7

  2. So installieren Sie Memcached auf CentOS 8

  3. So installieren Sie Nginx unter CentOS 7

  4. So installieren Sie Apache unter CentOS 7

  5. So installieren Sie ownCloud auf CentOS 8

So installieren Sie Nethogs auf CentOS

So installieren Sie Yourls in CentOS 8

So installieren Sie SuiteCRM auf CentOS 8

So installieren Sie Minikube unter CentOS 8

So installieren Sie Pure-FTPd unter CentOS

So installieren Sie Gogs unter CentOS 7