Bereit für digitale Souveränität?
Wenn du eine Git-Plattform suchst, die du gegenüber Auditoren, Kunden und Behörden vertreten kannst, ist GitWall der souveräne Ausgangspunkt.
GitWall ist die eigenständige Git-Plattform für Teams, die Kontrolle nicht abgeben wollen. Entwickelt für auditierbare Softwareentwicklung, harte Sicherheitsanforderungen, DSGVO-orientierte Betriebsmodelle und souveräne Infrastruktur aus Deutschland.
GitWall optimiert nicht auf möglichst viele Features, sondern auf Vertretbarkeit: Wer betreibt die Plattform, wer hat Zugriff, welche Aktionen sind nachvollziehbar und wie lässt sich das Setup gegenüber Audits, Kundenanforderungen und internen Sicherheitsrichtlinien begründen?
Logs, Freigaben und sicherheitsrelevante Vorgänge lassen sich strukturiert dokumentieren und prüfbar einordnen.
GitWall unterstützt kontrollierte Abläufe, Rollen, Nachvollziehbarkeit und technische Sicherheitsmaßnahmen als Basis für belastbare ISMS-Prozesse.
Weniger externer Plattformdruck, weniger Blackbox-Verhalten, mehr Kontrolle über Infrastruktur, Datenhaltung und Zugriffsmodell.
Besonders relevant für Unternehmen mit hohen Anforderungen an Datenschutz, Revision, Lieferkettensicherheit und interne Governance.
Jedes Repository wird verschlüsselt gespeichert. Schlüssel liegen nur bei Ihnen — kein Dritter kann auf Ihren Code zugreifen.
Push und Pull über HTTPS oder SSH. Access Tokens, SSH-Keys — jeder Standard-Git-Client funktioniert sofort.
Vollständiger PR-Workflow mit Merge-Kontrolle, Branch Protection und kollaborativen Reviews.
Komplettes Issue-Management mit Kommentaren, Labels und Status-Übergängen für strukturierte Entwicklung.
GitHub-Actions-kompatible Workflows mit nativen GitWall-Workflows, CI-Katalog und API-Zugriff für Runs, Logs und Workflow-Verwaltung.
Berechtigungen, Teams und Multi-Repository-Zugriff skalierbar verwalten — für Unternehmen jeder Größe.
Pre-Receive-Hook und CI-Action blockieren 150+ Credential-Muster bevor sie ins Repository gelangen. Markdown-Report pro Lauf.
Drag-and-Drop Pipeline-Builder. Actions aus der Palette zusammenstellen, Parameter im Properties-Panel bearbeiten, Live-YAML-Vorschau.
PR-Reviews, Zusammenfassungen, Drafts und Dokumentation via Mistral AI (europäischer Anbieter) oder eigenem Ollama-Modell — vollständig opt-in.
Tokenbasierte JSON-API für Runs, Logs, Workflows und CI-Katalog. Dokumentiert über /api/v1/docs und openapi.json direkt auf der Instanz.
Verschlüsseltes, zeitgesteuertes Backup auf S3-kompatiblen Storage — restore per Klick
Abhängigkeiten auf bekannte CVEs prüfen — Cargo, Go, npm, PyPI, Composer u.v.m. via OSV.dev, direkt im Security-Tab
Login-, Registrierungs- und globale Anfragelimits konfigurierbar im Admin-Bereich. IP-Adressen und CIDRs per Klick sperren — sofort wirksam ohne Neustart.
Single Sign-On über jeden OIDC-kompatiblen Identity Provider (Keycloak, Authentik, Azure AD, Google …). Gruppen-Mapping, Admin-Sync und optionaler Passwort-Login.
Fehlgeschlagene Logins, verdächtige IPs und Audit-Zusammenfassung im Überblick
GitHub Actions Workflows mit einem Klick nach .gitwall/workflows/ migrieren. Bekannte Actions werden automatisch in GitWall-Äquivalente konvertiert.
Verschlüsselten ev-Vault über GitWall synchronisieren. Eigene Stores pro Nutzer, separate Store-Tokens, GitWall sieht nur den Blob.
Eingebaute OCI-kompatible Image-Registry unter /v2/. Docker-Images direkt pushen und pullen — pro Repository namespaced, Authentifizierung via Access-Token.
GitWall verbindet UI und Automatisierung: dokumentierte API, abrufbarer CI-Katalog, Workflow-Endpunkte und verschlüsselter Cloud-Sync für EnVault.
Access Tokens aus den Nutzereinstellungen reichen für JSON-API-Zugriff. OpenAPI und Browser-Doku beschreiben die Endpunkte direkt auf der Instanz.
GET /api/v1/docsGET /api/v1/openapi.jsonGET /api/v1/actions/runsBuilt-in Actions, Workflow-Listing, letzte Runs und Logs sind über UI und API sichtbar — ideal für Integrationen, Skripte und interne Plattform-Tools.
GET /api/v1/ci/catalogGET /api/v1/repos/{owner}/{repo}/actions/workflowsGET /api/v1/repos/{owner}/{repo}/actions/runs/{runID}/logsBenutzer legen eigene Secret Stores an und synchronisieren ihren verschlüsselten Vault-Blob über GitWall. Store-Tokens sind getrennt von normalen GitWall-Tokens.
POST /api/v1/envault/storesGET /api/v1/envault/sync/{id}/PUT /api/v1/envault/sync/{id}/GitWall ist kein Fork von Gitea oder Forgejo mit neuem Branding. GitWall ist eine eigenständige Git-Plattform, die auf Sicherheit, Auditierbarkeit und souveränen Betrieb optimiert wurde.
Keine umgelabelte Gitea-/Forgejo-Abspaltung, sondern Produktentscheidungen entlang eigener Sicherheits- und Betriebsziele.
Secret-Scanning, Policies, Rate Limiting, API-Gates und verschlüsselte Repos sind Kernarchitektur, nicht nachträgliche Plugins.
Workflows, Logs, Freigaben und Zugriffspfade sind darauf ausgelegt, gegenüber Auditoren, Kunden und Behörden erklärbar zu bleiben.
Self-hosted, EU-fokussiert, klare Zuständigkeiten und reduzierte Abhängigkeit von fremden Plattforminteressen.
In 4 Schritten zu deiner eigenen Git-Instanz.
services:
db:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: gitwall
POSTGRES_USER: gitwall
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-changeme_in_production}
volumes:
- pgdata:/var/lib/postgresql/data
app:
image: noxway/gitwall:latest
restart: unless-stopped
depends_on: [db]
ports:
- "8080:8080" # HTTP (ohne ACME)
# - "80:80" # nur mit ACME_DOMAIN
# - "443:443" # nur mit ACME_DOMAIN
- "2222:2222" # SSH
environment:
DATABASE_URL: "postgres://gitwall:${POSTGRES_PASSWORD:-changeme_in_production}@db:5432/gitwall?sslmode=disable"
ENCRYPTION_KEY: <64 hex chars> # openssl rand -hex 32 ⚠️ In Passwort-Manager sichern! Ohne diesen Key sind alle Repos unwiederbringlich verloren.
WORKSPACE_DIR: /tmp/gitwall
APP_URL: http://localhost:8080 # lokal; Produktion: https://git.example.com
APP_NAME: GitWall
DEFAULT_LANG: de
# Optional – Automatische TLS-Zertifikate (Let's Encrypt):
# ACME_DOMAIN: git.example.com # aktiviert autocert auf :443
# ACME_EMAIL: admin@example.com # für LE-Benachrichtigungen
volumes:
- repos:/data/repos
- type: tmpfs
target: /tmp/gitwall
tmpfs:
size: 2g
- /var/run/docker.sock:/var/run/docker.sock # für Docker-Builds / Buildx in CI
runner:
image: noxway/gitwall-runner:latest
restart: unless-stopped
depends_on: [app]
environment:
GITWALL_URL: http://app:8080
RUNNER_NAME: my-runner
deploy:
resources:
limits:
cpus: "1"
memory: 1G
volumes:
- runner-data:/data
volumes:
pgdata:
repos:
runner-data:
# Encryption Key generieren und sofort in Passwort-Manager sichern!
# Ohne diesen Key sind alle Repos unwiederbringlich verloren.
openssl rand -hex 32
# Starten
docker compose up -d
# Beim ersten Aufruf öffnet sich der Setup-Wizard:
# http://localhost:8080/setup
# → Admin-Account + Organisation direkt im Browser anlegen
# Runner im Admin-Bereich prüfen und freigeben:
# http://localhost:8080/-/admin/runners
# → Pending Runner öffnen und genehmigen
noxway/gitwall:latest
Multi-arch (amd64 / arm64) · Automatische DB-Migration beim Start · SSH-Server auf Port 2222 · Git HTTP auf Port 8080
noxway/gitwall-runner:latest
Multi-arch (amd64 / arm64) · Führt CI/CD-Jobs aus · Verbindet sich per Token mit dem GitWall-Server
Wenn du eine Git-Plattform suchst, die du gegenüber Auditoren, Kunden und Behörden vertreten kannst, ist GitWall der souveräne Ausgangspunkt.
Tech Stack: Go · Chi Router · HTMX · Bootstrap 5 · PostgreSQL · Docker
🇪🇺 Self-hosted. Open Stack. Ihre Infrastruktur. Ihre Regeln. Kein US-Cloud Act.