Was ist Gitea?
Bis letztes Jahr nutzte ich GitLab als mein Code-Repository. Leider verabschiedete sich nach dem letzten Upgrade ins nirvana. Dabei war wohl meine MariaDB installation das Problem. Da ich mit der Performance nicht zufrieden wahr habe ich nach einer Alternative gesucht und bin mit Gitea fündig geworden. Eine in der Sprache "Go" geschrieben Applikation. Gitea ist ein fork von gogs einem Ressourcensparenden github.com/Gitlab.com Klon. Mit beiden Systemen kann man sich sein ganz persönliches github/gitlab Web aufbauen und zwar auf seinem eigenen Server oder einem NAS. Als Datenbank kann man MariaDB, MySQL, ProstgreSQL, SQLite3 oder MSSQL einrichten. In mehreren Beiträgen werde ich meine Anpassungen hier dokumentieren.
MariaDB Vorbereitung
Ich bevorzuge jeweils die bestehende Maria10 Datenbank auf der Synology. Daher braucht es keine weitere MySQL Instanz. Man erstellt die Datenbank die für gitea verwendet wird:
CREATE DATABASE IF NOT EXISTS gitea CHARACTER SET utf8 COLLATE utf8_general_ci; CREATE USER gitea@% IDENTIFIED BY 'MyPassword'; GRANT ALL PRIVILEGES ON gitea .* TO gitea@%;
Installation mit Docker
Mit docker pull hole ich die jeweilige Version herunter. In diesem Fall 1.6.0. Ich vermeide gitea:latest zu nehmen da ich keine Kontrolle habe welche Version ich gerade im Betrieb habe:
docker pull gitea/gitea:1.6.0
Ist der Download erfolgt starte ich diese manuell um breits Probleme zu erkennen. Durch das manuelle starten via docker run erhalte ich direkt in der Shell das Log. Nach dem Abbrechen [Ctr]+[x] kann ich sie abschliessend im Webinterface wieder starten:
sudo docker run --name gitea -it \ --hostname myNas \ --publish 30180:3000 \ --publish 30122:22 \ --env 'APP_NAME=Gitea' \ --env 'DB_TYPE=mysql' \ --env 'DB_HOST=192.168.1.10:3307' \ --env 'DB_NAME=gitea' \ --env 'DB_USER=gitea' \ --env 'DB_PASSWD=mysql-pw' \ --env 'HTTP_PORT=3000' \ --env 'SSH_DOMAIN=myNas' \ --env 'TZ=Europe/Zurich' \ --volume /volume1/docker/gitea:/data \ gitea/gitea:1.6.0
Nicht vergessen darf man, das bei der Synology MariaDB 10 auf dem Port 3307 läuft.
Yaml Gitea mit Docker Composer
Synology hat bei Docker auch das Hilftool docker-compose (version 1.14.0, build c7bdf9e) installiert. Hier alternativ die docker.yaml konfiguration:
version: '2' services: server: image: gitea/gitea:1.6.0 environment: - DB_TYPE=mysql - DB_HOST=db:3307 - DB_NAME=gitea - DB_USER=gitea - DB_PASSWD=gitea - TZ=Europe/Zurich - SSH_DOMAIN=myNAS - RUN_MODE=prod - APP_NAME=My Gitea volumes: - /volume1/docker/gitea:/data ports: - "30180:3000" - "30122:22"
Synology Nachbearbeitung
Damit der Dienst via SSL verfügbar ist, muss man ein selbst signiertes Zertifikat, DNS und den Reverse-Proxy einrichten:
Source:
- Protokoll: HTTPS
- Host: meingitea.lan
- Port: 443
Destination
- Protokoll: HTTP
- Host: localhost
- Port: 30180
Nachkonfiguration Gitea
Gitea wird durch eine app.ini konfiguriert. Darin sind die wichtigsten Konfigurationen möglich:
;Startseite LANDING_PAGE = home ;Keine Registration DISABLE_REGISTRATION = true ;Installation kann nicht überschrieben werden INSTALL_LOCK = trueDie Datei findet man unter: /volume1/docker/gitea/gitea/app.ini
Mehr Einstellungen zur app.ini kann man unter folgender URL nachschauen:
- https://docs.gitea.io/en-us/config-cheat-sheet/
- https://github.com/go-gitea/gitea/blob/master/custom/conf/app.ini.sample
...auch noch interessant
- docker // 21.09.2023Step CA HEALTHCHECK healthy und unhealthy
- git // 22.07.2023Gitea 1.20.1 is released
- Synology Network Attached Storage // 20.04.2022Synology Drive Server, Synology Drive App mit Synchronisation [Beta]
- git // 12.06.2021Powershell: GIT Push Lokal zu Remote, Klonen und einen Branch erstellen
Nichts gefunden
Es wurde zur Story Synolgoy: Docker: Gitea - Git with a cup of tea kein Kommentar gefundenInformation
Werbung oder Ähnliches sind nicht erlaubt, daher wird jeder Beitrag geprüft und freigegeben.Advertising, etc. are not allowed, so any contribution is reviewed and approved.
Facebook-Webadress are not allowed, Facebook als Webadresse ist nicht erlaubt
* Die E-Mail wird nicht veröffentlicht / The email will not be published
** Bitte Zahl eintragen / Please enter the number
Modal Header
Some text in the Modal Body
Some other text...
(c)2025 stastka.ch // help system