In dieser Anleitung erklären wir, wie man Gogs auf einem Ubuntu 18.04 VPS installiert mit MariaDB als Backend-Datenbank.
Gogs ist ein kostenloser und selbst gehosteter Open-Source-Git-Dienst, der in der Programmiersprache Go geschrieben ist. Es ist einfach zu installieren, plattformübergreifend und leichtgewichtig, wodurch Gogs problemlos auf allen Arten von Hardware ausgeführt werden kann. Diese Anleitung sollte auch auf anderen Linux VPS-Systemen funktionieren, aber sie wurde für einen Ubuntu 18.04 VPS getestet und geschrieben.
Voraussetzungen
- Ein Server mit Ubuntu 18.04
- Ein Benutzerkonto mit sudo-Berechtigungen oder Zugriff auf den „Root“-Benutzer selbst
Schritt 1:Erforderliche Pakete installieren
Melden Sie sich über SSH als root oder als sudo-Benutzer bei Ihrem VPS an:
ssh userame@IP_Address
Führen Sie anschließend die folgenden Befehle aus, um alle Pakete auf ihre neuesten verfügbaren Versionen zu aktualisieren:
sudo apt-get update sudo apt-get upgrade
Danach müssen wir git installieren. Sie können dies tun, indem Sie den folgenden Befehl verwenden:
sudo apt-get install git
Schritt 2:MySQL-Datenbank erstellen
Gogs kann MySQL-, PostgreSQL-, MSSQL-, TiDB- und SQLite3-Datenbanken für sein Datenbank-Backend verwenden.
In diesem Tutorial verwenden wir MySQL. Installieren Sie den neuesten MySQL-Server, indem Sie den folgenden Befehl ausführen:
sudo apt-get install mysql-server
Wenn die MySQL-Installation abgeschlossen ist, sichern Sie Ihre MariaDB-Installation mit mysql_secure_installation
Skript. Dieser Teil ist optional, wird aber dringend empfohlen, da er die Sicherheit Ihres Datenbankservers verbessert:
sudo mysql_secure_installation
Beantworten Sie dann die Sicherheitsfragen wie folgt:
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Melden Sie sich mit dem MySQL-Root-Benutzer bei der MySQL-Konsole an und verwenden Sie dabei das Passwort, das Sie im vorherigen Schritt eingerichtet haben:
mysql -u root -p
Erstellen Sie eine MySQL-Datenbank und einen Benutzer für Gogs und erteilen Sie dem Benutzer mit den folgenden Befehlen Berechtigungen:
mysql> CREATE SCHEMA `gogs` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; mysql> GRANT ALL PRIVILEGES ON gogs.* TO 'gogs'@'localhost' IDENTIFIED BY 'strongpassword'; mysql> FLUSH PRIVILEGES; mysql> \q
Stellen Sie sicher, dass Sie „strongpassword“ durch ein tatsächliches starkes Passwort ersetzen.
Schritt 3:Gogs installieren
Erstellen Sie zunächst einen neuen Systembenutzer für Gogs:
sudo adduser --home /opt/gogs --shell /bin/bash --gecos 'Gogs application' gogs
Die folgenden Befehle laden die Gogs-Binärdatei von der Gogs-Github-Seite herunter:
sudo wget https://github.com/gogs/gogs/releases/download/v0.11.86/linux_amd64.tar.gz
Extrahieren Sie das Archiv in das Verzeichnis /opt/gogs:
tar xvf linux_amd64.tar.gz --strip-components=1 -C /opt/gogs
Ändern Sie den Eigentümer des Verzeichnisses auf den Gogs-Benutzer:
sudo chown -R gogs:gogs /opt/gogs/
Kopieren Sie als Nächstes die systemd-Unit-Datei:
sudo cp /opt/gogs/scripts/systemd/gogs.service /etc/systemd/system/
Öffnen Sie die Unit-Datei mit Ihrem bevorzugten Texteditor – wir verwenden nano.
sudo nano /etc/systemd/system/gogs.service
Sobald die Datei geöffnet ist, bearbeiten Sie sie wie folgt:
[Unit] [Unit] Description=Gogs After=syslog.target After=network.target After=mariadb.service mysqld.service postgresql.service memcached.service redis.service [Service] # Modify these two values and uncomment them if you have # repos with lots of files and get an HTTP error 500 because # of that ### #LimitMEMLOCK=infinity #LimitNOFILE=65535 Type=simple User=gogs Group=gogs WorkingDirectory=/opt/gogs ExecStart=/opt/gogs web Restart=always Environment=USER=gogs HOME=/opt/gogs # Some distributions may not support these hardening directives. If you cannot start the service due # to an unknown option, comment out the ones not supported by your version of systemd. ProtectSystem=full PrivateDevices=yes PrivateTmp=yes NoNewPrivileges=true [Install] WantedBy=multi-user.targetnicht unterstützt werden
Speichern und schließen Sie die Datei, starten und aktivieren Sie dann den Gogs-Dienst:
sudo systemctl daemon-reload sudo systemctl start gogs sudo systemctl enable gogs
Überprüfen Sie, ob der Gogs-Dienst erfolgreich gestartet wurde:
● gogs.service - Gogs Loaded: loaded (/etc/systemd/system/gogs.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-04-07 12:25:32 CDT; 6min ago Main PID: 19220 (gogs) Tasks: 8 (limit: 2320) CGroup: /system.slice/gogs.service └─19220 /opt/gogs/gogs web Apr 07 12:25:32 localhost systemd[1]: Started Gogs. Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ WARN] Custom config '/opt/gogs/custom/conf/app.ini' not found, ignore this if you're running first time Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [TRACE] Custom path: /opt/gogs/custom Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [TRACE] Log path: /opt/gogs/log Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [TRACE] Log Mode: Console (Trace) Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Gogs 0.11.86.0130 Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Cache Service Enabled Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Session Service Enabled Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] SQLite3 Supported Apr 07 12:25:32 localhost gogs[19220]: 2019/04/07 12:25:32 [ INFO] Run Mode: Development Apr 07 12:25:33 localhost gogs[19220]: 2019/04/07 12:25:33 [ INFO] Listen: http://0.0.0.0:3000
Schritt 4:Gogs einrichten
Gehen Sie nach Abschluss der Installation zu http://server_ip:3000/install
und füllen Sie alle erforderlichen Felder aus. Denken Sie daran, „server_ip“ durch die öffentliche IP-Adresse Ihres Servers zu ersetzen:
Datenbankeinstellungen
– Datenbanktyp:MySQL
– Host:127.0.0.1:3306
– Benutzer:gogs
– Passwort:strongpassword
– Datenbankname:gogs
Allgemeine Einstellungen von Gogs
– Anwendungsname:Gogs
– Repository-Stammpfad:/opt/gogs/gogs-repositories
– Benutzer ausführen:gogs
– Domäne:SERVER_IP
– SSH-Port :22
– HTTP-Port:3000
– Anwendungs-URL:http://SERVER_IP:3000/
– Protokollpfad:/opt/gogs/log
Klicken Sie abschließend auf Installieren und Sie können loslegen.
Der Administratorzugriff wird automatisch dem ersten registrierten Benutzer gewährt:
Das ist es. Sie haben Gogs erfolgreich auf Ihrem Ubuntu 18.04 VPS installiert. Weitere Informationen zur Verwaltung Ihrer Gogs-Installation finden Sie in der offiziellen Gogs-Dokumentation.
Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, dies für Sie einzurichten. Sie sind 24×7 erreichbar und kümmern sich umgehend um Ihr Anliegen.
PS . Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken, indem Sie die unten stehenden Verknüpfungen zum Teilen verwenden, oder hinterlassen Sie einfach einen Kommentar unten im Kommentarbereich. Danke.