Forgejo ist eine leichtgewichtige, von der Community betriebene Git-Plattform (ein Fork von Gitea). Wir installieren Forgejo als Docker-Container und binden ihn direkt an unser proxy-net an.
1. Verzeichnisstruktur erstellen
Wechsle in das in Schritt 2 angelegte Verzeichnis für Forgejospan_2span_2:
cd /opt/containers/forgejo
2. Docker Compose Datei erstellen
Erstelle die Konfigurationsdatei docker-compose.yml:
cat << 'EOF' > docker-compose.yml
services:
server:
image: codeberg.org/forgejo/forgejo:9
container_name: forgejo
restart: unless-stopped
environment:
- USER_UID=1000
- USER_GID=1000
volumes:
- ./data:/var/lib/gitea
- ./config:/etc/gitea
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- '3000:3000' # HTTP Web-UI
- '2222:22' # SSH für Git
networks:
- proxy-net
networks:
proxy-net:
external: true
EOF
3. Forgejo starten
Starte den Forgejo-Container im Hintergrund:
docker compose up -d
4. Container-Status überprüfen
Prüfe, ob der Container läuft:
docker compose ps
Der Status von forgejo sollte Up bzw. running anzeigen.
5. Reverse Proxy im Nginx Proxy Manager einrichten
-
Öffne die NPM Admin-Oberfläche (
http://<DEINE-SERVER-IP>:81) im Browser:- Navigiere zu Hosts ➔ Proxy Hosts ➔ Add Proxy Host.
-
Details Tab:
-
Domain Names: Deine Domain/Subdomain für Forgejo (z. B.
git.deinedomain.de) -
Scheme:
http -
Forward Hostname / IP:
forgejo(Dank Docker-Netzwerk genügt der Container-Name!) -
Forward Port:
3000 -
Aktiviere Block Common Exploits und Websockets Support.
-
-
SSL Tab:
-
SSL Certificate: Request a new SSL Certificate
-
Aktiviere Force SSL und HTTP/2 Support.
-
Klicke auf Save.
-
6. Status-Checklist
-
[ ] Verzeichnis /opt/containers/forgejo aufgerufen.
-
[ ] docker-compose.yml erstellt.
-
[ ] Container gestartet (docker compose up -d).
-
[ ] Proxy Host im Nginx Proxy Manager angelegt.
-
[ ] Ersteinrichtung von Forgejo über die Domain aufgerufen und abgeschlossen.