Dies ist eine alte Version des Dokuments!
Installation
Nachfolgend werden die Schritte beschrieben, die nötig sind, um Gitea unter Ubuntu 26.04 LTS zu installieren.
- Nummerierter ListenpunktVerzeichnisstruktur vorbereiten
sudo mkdir -p /mnt/dataSSD/gitea/{data,config} sudo mkdir -p /mnt/dataSSD/gitea/data/lfs sudo mkdir -p /var/lib/gitea sudo mkdir -p /var/log/gitea
Symlink für saubere Struktur: sudo ln -s /mnt/dataSSD/gitea/data /var/lib/gitea/data sudo ln -s /mnt/dataSSD/gitea/config /etc/gitea
Rechte setzen: sudo adduser –system –group –disabled-login gitea sudo chown -R gitea:gitea /mnt/dataSSD/gitea sudo chown -R gitea:gitea /var/lib/gitea sudo chown -R gitea:gitea /etc/gitea sudo chown -R gitea:gitea /var/log/gitea sudo chmod -R 750 /mnt/dataSSD/gitea chmod 750 /etc/gitea
- Nummerierter ListenpunktGitea Binary (immer neueste Version)
# https://dl.gitea.com/gitea/ im Browser öffnen, den obersten Wert lesen und hier deine Version eintragen VERSION=1.26.1 sudo wget -O /usr/local/bin/gitea \
https://dl.gitea.com/gitea/$VERSION/gitea-$VERSION-linux-amd64
sudo chmod +x /usr/local/bin/gitea gitea –version
wget -O gitea https://dl.gitea.com/gitea/1.26.2/gitea-1.26.2-linux-amd64 chmod +x gitea sudo mv gitea /usr/local/bin/gitea
- Nummerierter Listenpunktsystemd‑Service erstellen
sudo nano /etc/systemd/system/gitea.service
[Unit] Description=Gitea (Git with a cup of tea) After=network.target mariadb.service Requires=mariadb.service
[Service] Type=simple User=gitea Group=gitea
WorkingDirectory=/mnt/dataSSD/gitea/data Environment=USER=gitea Environment=HOME=/mnt/dataSSD/gitea
ExecStart=/usr/local/bin/gitea web –config /etc/gitea/app.ini Restart=always RestartSec=2s
# Sicherheit CapabilityBoundingSet= NoNewPrivileges=true PrivateTmp=true ProtectSystem=full ProtectHome=true
[Install] WantedBy=multi-user.target
Aktivieren: sudo systemctl daemon-reload sudo systemctl enable –now gitea
- Nummerierter ListenpunktMariaDB vorbereiten
sudo mysql -u root -p
Dann: CREATE DATABASE gitea CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'gitea'@'localhost' IDENTIFIED BY '7vY6qeiN4LF9YN8A4gKA'; GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost'; FLUSH PRIVILEGES; EXIT;
- Nummerierter ListenpunktNGINX Reverse Proxy (HTTPS)
sudo nano /etc/nginx/sites-available/gitea.conf
server {
listen 80; server_name gitea.hoeglinger.name; return 301 https://$host$request_uri;
}
server {
listen 443 ssl; http2 on; server_name gitea.hoeglinger.name;
ssl_certificate /etc/letsencrypt/live/gitea.hoeglinger.name/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gitea.hoeglinger.name/privkey.pem;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
}
}
Aktivieren: sudo ln -s /etc/nginx/sites-available/gitea.conf /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx
Let’s Encrypt: sudo certbot –nginx -d gitea.hoeglinger.name
- Nummerierter ListenpunktGitea konfigurieren (app.ini)
sudo nano /etc/gitea/app.ini
[server] DOMAIN = gitea.hoeglinger.name ROOT_URL = https://gitea.hoeglinger.name/ HTTP_PORT = 3000 PROTOCOL = http
[database] DB_TYPE = mysql HOST = 127.0.0.1:3306 NAME = gitea USER = gitea PASSWD = 7vY6qeiN4LF9YN8A4gKA
[repository] ROOT = /var/lib/gitea/data/repositories ROOT = /mnt/dataSSD/gitea/data
- Nummerierter ListenpunktBestehende Repositories einbinden
Du hast: /mnt/dataSSD/gitea/data/eugen/*.git
Gitea erwartet: /var/lib/gitea/data/repositories/<username>/<repo>.git
Schritt 1: Benutzer in Gitea anlegen → Webinterface → Admin → Users → „eugen“
Schritt 2: Repos verschieben sudo mkdir -p /var/lib/gitea/data/repositories/eugen sudo mv /mnt/datassd/gitea/data/eugen/*.git /var/lib/gitea/data/repositories/eugen/ sudo chown -R gitea:gitea /var/lib/gitea/data/repositories
Schritt 3: Repos registrieren sudo -u gitea gitea admin regenerate hooks sudo -u gitea gitea admin repo-sync
- Nummerierter ListenpunktFunktionstest
sudo systemctl restart gitea sudo systemctl status gitea
Browser öffnen: https://gitea.hoeglinger.name
