- DISABLE_REGISTRATION = true (keine oeffentliche Registrierung) - ENABLE_CAPTCHA = true (Schutz bei Login) - ENABLE_OPENID_SIGNIN/SIGNUP = false (kein externer Login) - app.ini.template ohne Secrets fuer Dokumentation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Gitea on Proxmox
Self-hosted Git Repository Server auf Proxmox VE.
Status
| Service | URL | Status |
|---|---|---|
| Web UI (extern) | https://eckardt-vault.duckdns.org/git/ | Aktiv |
| Web UI (intern) | http://192.168.178.111:3000 | Aktiv |
| Git SSH | ssh://git@192.168.178.111:2222 | Aktiv |
Architektur
Internet
|
v
[Windows VPS: 217.154.65.205]
- nginx Reverse Proxy
- SSL (Let's Encrypt)
- Route: /git/ -> 10.0.0.2:3000
|
| WireGuard (10.0.0.0/24)
v
[Proxmox: 192.168.178.111 / 10.0.0.2]
- Docker Container: gitea
- Port 3000 (Web)
- Port 2222 (SSH)
Deployment
Voraussetzungen
- Proxmox VE Server mit Docker
- WireGuard Tunnel zum VPS (fuer externen Zugriff)
- nginx auf VPS konfiguriert
Quick Start
# Auf Proxmox Server
mkdir -p /opt/docker/gitea
cd /opt/docker/gitea
# docker-compose.yml kopieren (aus diesem Repo)
# Dann starten:
docker compose up -d
Ersteinrichtung
- Browser oeffnen: http://192.168.178.111:3000
- Datenbanktyp: SQLite3 auswaehlen
- Admin-Account erstellen
- Fertig!
Dateien
proxmox-gitea/
├── docker/
│ └── docker-compose.yml # Docker Compose Konfiguration
├── scripts/
│ ├── setup.sh # Installations-Script
│ └── backup.sh # Backup-Script
├── docs/
│ ├── INSTALL.md # Detaillierte Installationsanleitung
│ └── TROUBLESHOOTING.md # Problemloesungen
├── configs/
│ └── nginx-gitea.conf # nginx Konfiguration fuer VPS
└── README.md # Diese Datei
Troubleshooting
Bei Problemen siehe docs/TROUBLESHOOTING.md fuer:
- Container startet nicht
- Permission denied auf Proxmox
- Externer Zugriff funktioniert nicht
- SSH Clone Probleme
- Backup Fehler
Konfiguration
docker-compose.yml
Wichtige Einstellungen:
| Variable | Wert | Beschreibung |
|---|---|---|
| ROOT_URL | https://eckardt-vault.duckdns.org/git/ | Externe URL |
| SSH_DOMAIN | 192.168.178.111 | SSH Host |
| SSH_PORT | 2222 | Git SSH Port |
| DB_TYPE | sqlite3 | Datenbank |
Proxmox-spezifisch
Fuer Bare Metal Proxmox sind diese security_opt erforderlich:
security_opt:
- apparmor=unconfined
- seccomp=unconfined
Backup
Automatisches Backup taeglich um 03:00 Uhr:
# Manuell ausfuehren
/opt/gitea/backup.sh
# Backup-Verzeichnis
ls -la /opt/gitea-backups/
Wartung
# Status pruefen
docker ps | grep gitea
# Logs anzeigen
docker logs gitea -f
# Update
cd /opt/docker/gitea
docker compose pull
docker compose up -d
# Neustart
docker compose restart gitea
Repository verbinden
Neues Repo klonen
git clone https://eckardt-vault.duckdns.org/git/USER/REPO.git
# Oder via SSH (intern)
git clone ssh://git@192.168.178.111:2222/USER/REPO.git
Bestehendes Repo pushen
cd mein-projekt
git remote add origin https://eckardt-vault.duckdns.org/git/USER/REPO.git
git push -u origin main
Changelog
2024-12-28
- Initial Deployment auf Proxmox 192.168.178.111
- Externer Zugriff via DuckDNS konfiguriert
- Health-Check und Resource Limits hinzugefuegt
Description
Languages
Shell
100%