gitea reloaded

Seit dem ersten Post zu gitea gab es eine Menge Änderungen, weshalb ich jetzt alles nochmal in einem aktuelleren Beitrag packe.

Das Gitea Logo  zeigt eine stilisierte grüne Teetasse.
GITEA official Logo CC-BY-SA 4.0 Lauris BH / Wikipedia

gitea Repo

Das alte Repo in der Dockerregistry wird nicht mehr weitergepflegt. Daher verwende ich jetzt das offizielle Repository von gitea gitea/gitea:latest.

Umzug auf neue Hardware

Bisher lief der Container auf dem Raspberry Pi 4 des Homeserver Post, da aber auf dem Raspberry Pi 5 mit Nextcloud genügend Ressourcen frei sind, ziehe ich ihn dort hin um.

docker-compose.yml

Das docker-compose.yml sieht nicht viel anders aus als vorher.

version: "3"

services:
  gitea:
    container_name: gitea
    image: gitea/gitea:latest
    ports:
      - '3001:3000/tcp'
    # Volumes store your data between container upgrades
    volumes:
      - '/opt/gitea:/data'
    restart: unless-stopped

Den ssh Port führe ich nicht mehr aus dem Container nach draussen, da https:// über nginx gut genug funktioniert. Der Port 3000 wird jetzt nach aussen auf 3001 gemapped, da dieser Port schon anderweitig belegt ist. Das Volumeverzeichnis lege ich dann mit

sudo mkdir /opt/gitea

an und kopiere die bestehenden Daten dort hinein. Der Container wird mit

docker-compose up -d

gestartet.

Einrichtung und Konfiguration

Die Einrichtung von gitea läuft analog zum Vorgängerpost. Es gibt nur eine Konfiguration, von der ich dir empfehle sie händisch durchzuführen.

In der Datei /opt/gitea/gitea/conf/app.ini solltest du den folgenden Eintrag unbedingt auf true setzen.

[service]
DISABLE_REGISTRATION = true

Dies verhindert, dass sich jeder beliebige in deinem gitea registrieren kann und dort Repos erstellt, um dort möglicherweise illegale Daten abzulegen. Dies ist vor allem bei öffentlich zugänglichen Servern notwendig.

Containerupdate

Für das Update des gitea Containers habe ich inzwischen zwei Scripte im Einsatz. Das erste (update-container.sh) übernimmt die Aufgabe, das neue Image von der Dockerregistry zu pullen und den aktuellen Container zu löschen. Es erwartet zwei Parameter: den Namen des Image in ${1} und den Containernamen in {2}. Dieses Script ist universell für jeden Container benutzbar.

#! /usr/bin/bash

echo "pulling image ${1}"
docker pull ${1}

echo "removing container ${2}"
docker rm -f ${2}

Das zweite Script (update.sh)ruft das erste mit den Werten für gitea auf.

#! /usr/bin/bash

export COMPOSE_IGNORE_ORPHANS=True
./update-container gitea/gitea:latest gitea
echo "creating new container"
docker-compose -f ./docker-compose.yml up -d

Beide Scripte müssen im gleichen Verzeichnis wie das docker-compose.yml liegen.

Fazit

Ich habe diese Umstellung schon im September 2025 gemacht. Sie ging ohne großes Aufsehen vonstatten.

Durch das offizielle Repo komme ich jetzt schneller an aktuelle Versionen ran und gitea läuft subjektiv performanter auf dem Raspberry Pi 5. Die Dateien dieses Post habe ich natürlich in gitea abgelegt.

Schreibe einen Kommentar

Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert
Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
raspithek.de - Olli Graf
WordPress Cookie Hinweis von Real Cookie Banner