Gogs

Aus brainelectronics Wiki
Wechseln zu: Navigation, Suche

Installation

Im Terminal

   $ sudo adduser --disabled-login --gecos 'Gogs' git

ausführen und mit

   $ sudo su - git

als dieser Benutzer wechseln
Anschließend passende Datei von Gogs Download herunterladen, entpacken, in das entstandene Verzeichnis wechseln und mit

   $ ./gogs web 

starten. Nun kann über die Adresse des Systems (http://localhost:3000 oder 129.168.178.RASPBERRY:3000) die Installation beginnen.

Database Settings

Hier am einfachsten SQLite3 auswählen.

Application General Settings

Repository Root Path: Pfad an dem die Repositorys abgespeichert werden sollen. Z.B. /mnt/usbstick/gogs/gogs-repositories
Run User: default Benutzer eingeben, meist "git"
Domain: "git.meine-adresse.com"
SSH Port: der Port über den man sich auch mittels SSH einloggt
Application URL: Adresse des Geräts z.B. git.meine-adresse.com

Virtual Host

Es wird eine neue default conf Datei kopiert und entsprechend angepasst:

   $ cd /etc/apache2/sites-available/
   $ sudo cp 000-default.conf meine-neue-seite.conf
   $ sudo nano meine-neue-seite.conf

Enable module

Zum reibungslosen Betrieb muss zudem folgende Module aktiviert werden:

   $ sudo a2enmod proxy proxy_http

Start

Nachdem alles eingegeben wurde und die Anmeldung erfolgreich war, kann man das Webinterface abbrechen und einen Service für Gogs erstellen

   $ cd /etc/systemd/system/
   $ sudo nano gogs.service
[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=git
Group=git
WorkingDirectory=/home/git/gogs
ExecStart=/home/git/gogs/gogs web
Restart=always
Environment=USER=git HOME=/home/git

[Install]
WantedBy=multi-user.target
 
   $ sudo systemctl enable gogs
   $ sudo systemctl start gogs

Danach sollte Gogs wieder unter der angegebenen Adresse verfügbar sein. Dies kann zusätzlich mit nachfolgendem Befehl überprüft werden

   $ sudo systemctl status gogs -l


Autologin ändern

   sudo nano /etc/lightdm/lightdm.conf

und die Zeile autologin-user=pi auf den gewünschten Nutzen (git) ändern

Credits

Gogs on Raspberry Pi
Gogs Service File
FAQ