<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.hostsharing.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mzz00</id>
	<title>Hostsharing Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.hostsharing.net/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mzz00"/>
	<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=Spezial:Beitr%C3%A4ge/Mzz00"/>
	<updated>2026-04-25T23:47:24Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.hostsharing.net/index.php?title=Gitea&amp;diff=4786</id>
		<title>Gitea</title>
		<link rel="alternate" type="text/html" href="https://wiki.hostsharing.net/index.php?title=Gitea&amp;diff=4786"/>
		<updated>2019-01-31T22:14:39Z</updated>

		<summary type="html">&lt;p&gt;Mzz00: Korrektur des Ablaufs - die Datei wurde beim Download umbenannt, das muss bei der Signaturüberprüfung beachtet werden.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== Gitea installieren ==&lt;br /&gt;
&lt;br /&gt;
[https://gitea.io/en-us/ Gitea] ist ein einfacher, selbst gehosteter Git-Service wie GitHub oder GitLab. Die Software ist ein Fork von Gogs und ebenfalls in der Programmiersprache Go geschrieben. Gitea benötigt wenig Ressourcen. Um Gitea auf der Hostsharing Plattform nutzen zu können, benötigt man entweder einen Managed Server oder man muss für seinen Managed Webspace einen Daemon hinzubuchen.&lt;br /&gt;
&lt;br /&gt;
Gitea unterstützt verschiedene Datenbanken. Wir gehen in dieser Anleitung davon aus, dass PostgreSQL benutzt wird.&lt;br /&gt;
&lt;br /&gt;
=== Vorbereitung der Installation ===&lt;br /&gt;
&lt;br /&gt;
Um Gitea auf der Managed Operation Platform von Hostsharing zu installieren, ist folgende Vorbereitung erforderlich.&lt;br /&gt;
&lt;br /&gt;
1. Anlegen eines Domain-Benutzers. In unserem Beispiel &amp;lt;code&amp;gt;xyz00-gitea&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
2. Anlegen einer Domain. In unserem Beispiel &amp;lt;code&amp;gt;gitea.hs-example.de&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
3. Anlegen eines Datenbank-Benutzers. Hier &amp;lt;code&amp;gt;xyz00_giteadbuser&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
4. Anlegen einer Datenbank. Hier &amp;lt;code&amp;gt;xyz00_giteadb&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Auf der Kommandozeile kann man dies folgendermaßen erledigen.&lt;br /&gt;
&lt;br /&gt;
Man loggt sich als Paketbenutzer ein und startet die Kommandozeilenversion von HSAdmin mit dem Befehl &amp;lt;code&amp;gt;hsscript&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  hsscript -u xyz00 -i&lt;br /&gt;
  Password: ********&lt;br /&gt;
&lt;br /&gt;
Anschließend kann man die Vorbereitungsschritte 1 bis 4 erledigen:&lt;br /&gt;
&lt;br /&gt;
  xyz00@hsadmin&amp;gt; user.add({set:{name:&#039;xyz00-gitea&#039;,password:&#039;geheim&#039;,shell:&#039;/bin/bash&#039;}})&lt;br /&gt;
  xyz00@hsadmin&amp;gt; domain.add({set:{name:&#039;gitea.hs-example.de&#039;,user:&#039;xyz00-gitea&#039;}})&lt;br /&gt;
  xyz00@hsadmin&amp;gt; postgresqluser.add({set:{name:&#039;xyz00_giteadbuser&#039;,password:&#039;geheim&#039;}})&lt;br /&gt;
  xyz00@hsadmin&amp;gt; postgresqldb.add({set:{name:&#039;xyz00_giteadb&#039;,owner:&#039;xyz00_giteadbuser&#039;}})&lt;br /&gt;
&lt;br /&gt;
=== Installation von Gitea ===&lt;br /&gt;
&lt;br /&gt;
Gitea wird als Binary zur Verfügung gestellt.&lt;br /&gt;
Wir installieren das Binary im Verzeichnis des Domain-Benutzers.&lt;br /&gt;
Wenn wir als Paketbenutzer eingeloggt sind, können wir den Benutzer folgendermaßen wechseln:&lt;br /&gt;
&lt;br /&gt;
  sudo -u xyz00-gitea -i&lt;br /&gt;
  &lt;br /&gt;
Nun laden wir das passende Binary herunter.&lt;br /&gt;
Auf der Website https://dl.gitea.io/gitea/ finden Sie das jeweils aktuelle Binary (hier die 64-Bit-Version, &lt;br /&gt;
für die shared Server h01 bis h08 bitte die 32-Bit-Version gitea-1.7.0-linux-i386 herunterladen).&lt;br /&gt;
&lt;br /&gt;
  wget -O gitea https://dl.gitea.io/gitea/1.7.0/gitea-1.7.0-linux-amd64&lt;br /&gt;
  chmod +x gitea&lt;br /&gt;
&lt;br /&gt;
Wir laden die GPG-Signatur herunter und überprüfen sie:&lt;br /&gt;
&lt;br /&gt;
  wget https://dl.gitea.io/gitea/1.7.0/gitea-1.7.0-linux-amd64.asc&lt;br /&gt;
  gpg --keyserver pgp.mit.edu --recv 7C9E68152594688862D62AF62D9AE806EC1592E2&lt;br /&gt;
  gpg --verify gitea-1.7.0-linux-amd64.asc gitea&lt;br /&gt;
&lt;br /&gt;
Nun können wir Gitea testweise starten:&lt;br /&gt;
&lt;br /&gt;
  ./gitea web&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
Der Webserver von Gitea startet auf dem Port 3000. Das werden wir später ändern.&lt;br /&gt;
&lt;br /&gt;
Der Server kann mit Ctrl-C beendet werden.&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration der Domain ===&lt;br /&gt;
&lt;br /&gt;
Zunächst wechseln wir in das Verzeichnis &amp;lt;code&amp;gt;doms/gitea.hs-example.de&amp;lt;/code&amp;gt; und löschen den Ordner für die Subdomain &#039;www&#039;:&lt;br /&gt;
&lt;br /&gt;
  rm -rf subs/www&lt;br /&gt;
  rm -rf subs-ssl/www&lt;br /&gt;
  &lt;br /&gt;
Anschließend tragen wir die Umleitung auf HTTPS ein, falls dies nicht schon geschehen ist.&lt;br /&gt;
&lt;br /&gt;
  vi htdocs/.htaccess&lt;br /&gt;
  &lt;br /&gt;
Der Eintrag muss lauten:&lt;br /&gt;
&lt;br /&gt;
  Redirect permanent / https://gitea.hs-example.com/&lt;br /&gt;
  &lt;br /&gt;
Dann legen wir die Datei &amp;lt;code&amp;gt;htdocs-ssl/.htaccess&amp;lt;/code&amp;gt; mit folgendem Inhalt an:&lt;br /&gt;
&lt;br /&gt;
  RewriteEngine on&lt;br /&gt;
  RewriteBase /&lt;br /&gt;
  RewriteRule ^(.*) http://localhost:31580/$1 [proxy,last]&lt;br /&gt;
  &lt;br /&gt;
Merken Sie sich die Portnummer 31580.&lt;br /&gt;
Sie wird später bei der Konfiguration von Gitea gebraucht.&lt;br /&gt;
Die Portnummer bekommen Sie vom Hostmaster, wenn Sie für Ihren Webspace einen Serverdienst (Daemon) buchen.&lt;br /&gt;
Wenn Sie einen Managed Server haben, können Sie selbst die Portnummer auswählen.&lt;br /&gt;
&lt;br /&gt;
Damit ist die Konfiguration von Apache abgeschlossen.&lt;br /&gt;
&lt;br /&gt;
=== Konfiguration von Gitea ===&lt;br /&gt;
&lt;br /&gt;
Wir editieren nun die Konfigurationsdatei von Gitea &amp;lt;code&amp;gt;app.ini&amp;lt;/code&amp;gt;.&lt;br /&gt;
Sie befindet sich in dem Verzeichnis &amp;lt;code&amp;gt;~/custom/conf&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ACHTUNG&#039;&#039;&#039;: Sie können die Konfiguration teilweise auch über das Webinterface durchführen. Starten Sie dazu Gitea, wie oben beschrieben, und versuchen Sie einen Benutzer zu registrieren. Daraufhin öffnet sich der Konfigurationsdialog. Sie müssen den Gitea-Benutzer, den Namen der Datenbank, den Datenbank-Benutzer und sein Passwort parat haben.&lt;br /&gt;
&lt;br /&gt;
Die Konfigurationsdatei beginnt mit allgemeinen Einträgen:&lt;br /&gt;
&lt;br /&gt;
  APP_NAME = Gitea: Git with a cup of tea&lt;br /&gt;
  RUN_USER = xyz00-gitea&lt;br /&gt;
  RUN_MODE = prod&lt;br /&gt;
  &lt;br /&gt;
Im Abschnitt [database] folgen die Angaben zur Datenbank:&lt;br /&gt;
&lt;br /&gt;
  [database]&lt;br /&gt;
  DB_TYPE  = postgres&lt;br /&gt;
  HOST     = 127.0.0.1:5432&lt;br /&gt;
  NAME     = xyz00_giteadb&lt;br /&gt;
  USER     = xyz00_giteadbuser&lt;br /&gt;
  PASSWD   = geheim&lt;br /&gt;
  SSL_MODE = disable&lt;br /&gt;
  PATH     = data/gitea.db&lt;br /&gt;
&lt;br /&gt;
Es folgt der Pfad zu den Git-Repositorys und die Server-Konfiguration:&lt;br /&gt;
&lt;br /&gt;
  [repository]&lt;br /&gt;
  ROOT = /home/pacs/xyz00/users/gitea/gitea-repositories&lt;br /&gt;
  &lt;br /&gt;
  [server]&lt;br /&gt;
  PROTOCOL         = http&lt;br /&gt;
  SSH_DOMAIN       = gitea.hs-example.de &lt;br /&gt;
  DOMAIN           = gitea.hs-example.de&lt;br /&gt;
  HTTP_ADDR        = localhost&lt;br /&gt;
  HTTP_PORT        = 31580&lt;br /&gt;
  ROOT_URL         = https://gitea.hs-example.de/&lt;br /&gt;
  DISABLE_SSH      = false&lt;br /&gt;
  SSH_PORT         = 22&lt;br /&gt;
  LFS_START_SERVER = true&lt;br /&gt;
  &lt;br /&gt;
Sie können nun Gitea starten:&lt;br /&gt;
&lt;br /&gt;
  ./gitea web&lt;br /&gt;
  &lt;br /&gt;
Der Git-Service ist dann im Browser unter der Adresse gitea.hs-example.de erreichbar.&lt;br /&gt;
&lt;br /&gt;
=== Start- und Stopp-Skripte einrichten ===&lt;br /&gt;
&lt;br /&gt;
Zum Schluss müssen Sie noch Start- und Stoppskripte einrichten und Monit konfigurieren.&lt;br /&gt;
&lt;br /&gt;
Das Startskript speichern Sie unter dem Pfad &amp;lt;code&amp;gt;~/bin/gitea-start.sh&amp;lt;/code&amp;gt; ab.&lt;br /&gt;
Es hat folgenden Inhalt:&lt;br /&gt;
&lt;br /&gt;
  #!/bin/bash&lt;br /&gt;
  export HOME=/home/pacs/xyz00/users/gitea&lt;br /&gt;
  export PATH=$HOME/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games&lt;br /&gt;
  export PID=$HOME/.gitea.pid&lt;br /&gt;
  cd $HOME&lt;br /&gt;
  exec $HOME/gitea web &amp;gt;$HOME/custom/logs/gitea.log 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
  echo $! &amp;gt; $PID&lt;br /&gt;
&lt;br /&gt;
Das Stoppskript speichern Sie unter dem Pfad &amp;lt;code&amp;gt;~/bin/gitea-stopp.sh&amp;lt;/code&amp;gt; an.&lt;br /&gt;
Es hat folgenden Inhalt:&lt;br /&gt;
&lt;br /&gt;
  #!/bin/bash&lt;br /&gt;
  export HOME=/home/pacs/xyz00/users/gitea&lt;br /&gt;
  export PATH=$HOME/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games&lt;br /&gt;
  export PID=$HOME/.gitea.pid&lt;br /&gt;
  cd $HOME&lt;br /&gt;
  &lt;br /&gt;
  if [ -f $PID ] ; then &lt;br /&gt;
      kill $( cat $PID );&lt;br /&gt;
      sleep 20 ;&lt;br /&gt;
      kill -9 $( cat $PID ) &amp;gt;/dev/null 2&amp;gt;&amp;amp;1 ;&lt;br /&gt;
      rm $PID ;&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
Monit ist ein Programm zur Überwachung eines Servers oder eines Dienstes.&lt;br /&gt;
Das Programm erwartet im Verzeichnis des Domain-Benutzers die Datei &amp;lt;code&amp;gt;~/.monitrc&amp;lt;/code&amp;gt; mit der entsprechenden Konfiguration.&lt;br /&gt;
Legen Sie die Datei mit folgendem Inhalt an:&lt;br /&gt;
&lt;br /&gt;
  set daemon 600&lt;br /&gt;
  set logfile /home/pacs/xyz00/users/gitea/custom/logs/monit.log&lt;br /&gt;
  set mailserver localhost&lt;br /&gt;
  set alert webmaster@gitea.hs-example.de&lt;br /&gt;
&lt;br /&gt;
  check process gitead with pidfile /home/pacs/xyz00/users/gitea/.gitea.pid&lt;br /&gt;
      start program &amp;quot;/home/pacs/xyz00/users/gitea/bin/gitea-start.sh&amp;quot;&lt;br /&gt;
      stop program &amp;quot;/home/pacs/xyz00/users/gitea/bin/gitea-stop.sh&amp;quot;&lt;br /&gt;
      &lt;br /&gt;
Nun können Sie noch die Rotation der Logfiles konfigurieren.&lt;br /&gt;
Dies geschieht in der Datei &amp;lt;code&amp;gt;~/.logrotate&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
  /home/pacs/xyz00/users/gitea/custom/logs/gitea.log {&lt;br /&gt;
    copytruncate&lt;br /&gt;
    daily&lt;br /&gt;
    rotate 7&lt;br /&gt;
    compress&lt;br /&gt;
    missingok&lt;br /&gt;
  }&lt;br /&gt;
  /home/pacs/xyz00/users/gitea/custom/logs/monit.log {&lt;br /&gt;
    copytruncate&lt;br /&gt;
    monthly&lt;br /&gt;
    rotate 2&lt;br /&gt;
    compress&lt;br /&gt;
    missingok&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
Damit die Konfiguration für logrotate und monit auch nach einem Server-Neustart eingelesen werden, müssen Sie folgenden Eintrag in der crontab der Domain-Benutzers machen:&lt;br /&gt;
&lt;br /&gt;
  # m h  dom mon dow   command&lt;br /&gt;
  HOME=/home/pacs/xyz00/users/gitea&lt;br /&gt;
  PATH=$HOME/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games&lt;br /&gt;
  PID=$HOME/.gitea.pid&lt;br /&gt;
  @reboot /usr/bin/monit -c $HOME/.monitrc &amp;gt; /dev/null&lt;br /&gt;
  51 1 * * * /usr/sbin/logrotate -s $HOME/.logrotate.state $HOME/.logrotate&lt;br /&gt;
 &lt;br /&gt;
Wichtig ist der @reboot-Eintrag, der automatisch nach einem Neustart des Hosts ausgeführt wird.&lt;br /&gt;
Die Uhrzeit für die Logrotation können Sie beliebig einstellen.&lt;br /&gt;
&lt;br /&gt;
Abschließend können Sie Ihre Gitea-Instanz starten:&lt;br /&gt;
&lt;br /&gt;
  ~/bin/gitea-start.sh&lt;/div&gt;</summary>
		<author><name>Mzz00</name></author>
	</entry>
</feed>