selfhostedworld.com logoselfhostedworld.com

Try describing what you need:

GitProxy logo

GitProxy

★ 258
Apache License 2.0Open Source — No Paywall9 Containers — 9 containers — heavy hosting footprintBinary · SourceNeeds MongoDB1 documented maintainer

About

GitProxy is a proxy layer for Git traffic that enforces security and compliance rules on outgoing push operations. It is intended for teams and organizations that need to apply controls such as...

Community Ratings

No ratings yet

Features

  • push protection
  • policy enforcement
  • HTTP/HTTPS support
  • SSH support
  • basic authentication
  • JWT token support
  • SSH key authentication
  • secret detection
  • commit validation
  • audit logging

Details

Last Updated
Oct 18, 2026
Created
Apr 17, 2020
Install Methods
binarysource
Requirements
Node.js
Authentication
ldapproxy-authlocal
Runtime / Stack
NodejsDocker
Privacy & Independence
No Cloud RequiredOffline Capable
Deployment

Deployment: Docker Compose ✓9 Containers — heavy hosting footprintRuns as 9 containers

Run GitProxy with Docker Compose

Compose file from the GitProxy project repository.

9 services · database: mongo · infra: mongo · 8 unclassified (alpine, node, opentelemetry-collector-contrib, promtail, tempo, prometheus, loki, grafana)

no resource limits declared

needs persistent storage (14 volumes)

experimental/license-inventory/docker-compose.yaml · @ 1074b9b · scanned Sep 24, 2026

services:
  init:
    image: alpine:3.21@sha256:a8560b36e8b8210634f77d9f7f9efd7ffa463e380b75e2e74aff4511df3ef88c
    init: true
    volumes:
      - mongo-logs:/var/log-mongo
      - tempo-data:/var/tempo
    command: >
      chmod 777 /var/log-mongo && chown -R 10001:10001 /var/tempo

  app:
    container_name: license-inventory
    image: node:23-alpine@sha256:0a29d8a047149079bf48dab598f287815e39867d547e8f3935cfdece0a4379cc
    # ensure colours show
    tty: true
    command: >
      sh -c "npm install --include=optional && npm run dev"
    environment:
      MONGO_URI: mongodb://mongo:27017/inventory
      OTEL_TRACES_EXPORTER: otlp
      OTEL_EXPORTER_OTLP_ENDPOINT: http://otel-collector:4318
      OTEL_EXPORTER_OTLP_PROTOCOL: http/protobuf
      OTEL_SERVICE_NAME: license-inventory
      OTEL_RESOURCE_ATTRIBUTES: service.version=0.0.0
    ports:
      - 3000:3000
    working_dir: /usr/src/app
    volumes:
      - .:/usr/src/app
      # have a separate node dependencies
      # avoids permissions conflicts
      - node-deps:/usr/src/app/node_modules
    depends_on:
      - mongo
      - otel-collector

  mongo:
    image: mongo:8.0.4@sha256:aaad67f2dca93148e5343c03210bcfc89a0107516a4756bfa018acd6579e5b18
    command: --logpath=/var/log/mongo.log
    ports:
      - 27017:27017
    volumes:
      - mongo-data:/data/db
      - mongo-logs:/var/log
    depends_on:
      - init

  otel-collector:
    image: otel/opentelemetry-collector-contrib:0.120.0@sha256:85ac41c2db88d0df9bd6145e608a3cb023f5d8443868adbfbbf66efb51087917
    volumes:
      - ./dev/otel-collector-config.yaml:/etc/otelcol-contrib/config.yaml
    depends_on:
      - loki
      - tempo

  promtail:
    image: grafana/promtail:3.4.2@sha256:c6e9a987ca086cbfef945b8ebd708eb09f98b5e78bfb659e4e5a8b3bd604d11b
    command:
      - -config.file=/etc/promtail/config.yaml
      - -log.level=warn
    volumes:
      - ./dev/promtail.yaml:/etc/promtail/config.yaml
      - mongo-logs:/var/log-mongo
    depends_on:
      - loki

  # traces
  tempo:
    image: grafana/tempo:2.7.1@sha256:4443be217c396b065ee34845534199c36fdba4dc619cb96550e228d73fba6e69
    command:
      - -config.file=/etc/tempo.yaml
      - -log.level=warn
    volumes:
      - ./dev/tempo.yaml:/etc/tempo.yaml
      - tempo-data:/var/tempo
    depends_on:
      - init
      - prometheus

  # metrics
  prometheus:
    image: prom/prometheus:v3.2.0@sha256:5888c188cf09e3f7eebc97369c3b2ce713e844cdbd88ccf36f5047c958aea120
    command:
      - --config.file=/etc/prometheus.yaml
      - --enable-feature=exemplar-storage
      - --enable-feature=native-histograms
      - --web.enable-remote-write-receiver
      - --enable-feature=otlp-write-receive
      - --web.enable-otlp-receiver
      - --log.level=warn
    volumes:
      - ./dev/prometheus.yaml:/etc/prometheus.yaml
    ports:
      - 9090:9090

  # logs
  loki:
    image: grafana/loki:3.4.2@sha256:58a6c186ce78ba04d58bfe2a927eff296ba733a430df09645d56cdc158f3ba08
    command:
      - -config.file=/etc/loki/loki.yaml
      - -log.level=warn
    ports:
      - 3100:3100
    volumes:
      - ./dev/loki.yaml:/etc/loki/loki.yaml

  # everything dashboard
  grafana:
    image: grafana/grafana:12.0.2@sha256:b5b59bfc7561634c2d7b136c4543d702ebcc94a3da477f21ff26f89ffd4214fa
    ports:
      - 3001:3000
    volumes:
      - ./dev/grafana/datasources.yaml:/etc/grafana/provisioning/datasources/datasources.yaml
    environment:
      - GF_AUTH_ANONYMOUS_ENABLED=true
      - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
      - GF_AUTH_DISABLE_LOGIN_FORM=true
      - GF_FEATURE_TOGGLES_ENABLE=traceqlEditor metricsSummary
      - GF_INSTALL_PLUGINS=grafana-lokiexplore-app,grafana-exploretraces-app
      # seem to get auth warnings even though we're on anonymous auth
      - GF_LOG_LEVEL=error
    depends_on:
      - loki
      - tempo
      - prometheus

volumes:
  mongo-logs:
  mongo-data:
  tempo-data:
  node-deps:

This file may be out of date. Check the GitProxy documentation for current setup steps.

Track your self-hosted stack

Bookmark software to try, rate tools you've used, and keep your collection in one place.

Metadata extracted from README on Jul 20, 2026

Related Software

Caddy logo

Caddy

78.1k
Caddy is an extensible web server and server platform that uses TLS by default and automates HTTPS.
Web ServersPermissive LicenseProxy Servers+1
Details
Traefik logo

Traefik

65.3k
Traefik is a modern HTTP reverse proxy and load balancer for deploying microservices.
Web ServersPermissive LicenseProxy Servers+2
2 Containers
Details
NGINX logo

NGINX

31.9k
NGINX is a high-performance web server, reverse proxy, load balancer, API gateway, and content cache.
Web ServersPermissive LicenseProxy Servers+2
Details
CapRover logo

CapRover

15.2k
CapRover is a deployment platform and webserver manager for NodeJS, Python, PHP, ASP.NET, Ruby, and common databases.
Platform as a ServiceSelf Hosting SolutionsWeb Servers+4
Not FOSS
Details
Nginx Proxy Manager logo

Nginx Proxy Manager

34.4k
A Docker-based Nginx reverse proxy manager with a web admin interface for forwarding hosts and managing SSL certificates.
Web ServersPermissive LicenseProxy Servers+3
Details
MediaMTX logo

MediaMTX

20.4k
MediaMTX is a ready-to-use real-time media server and media proxy for publishing, reading, proxying, recording, and playing back video and audio streams.
Multimedia StreamingMedia ServersVideo Surveillance+2
Details
Tyk logo

Tyk

10.9k
Tyk Gateway is an open source, cloud-native API gateway for managing, securing, and monitoring APIs across REST, GraphQL, TCP, and gRPC protocols.
API ManagementProxy ServersAnalytics Tools+2
Details
Warpgate logo

Warpgate

8.1k
A transparent bastion host for SSH, HTTPS, Kubernetes, MySQL, and PostgreSQL that records sessions and provides a built-in web admin UI.
Remote AccessProxy ServersAuthentication Services+2
Details
LiteLLM logo

LiteLLM

61.5k
LiteLLM is an open source AI gateway and Python SDK for calling 100+ LLM providers through a unified OpenAI-compatible interface.
API ManagementProxy ServersArtificial Intelligence+2
3 ContainersOpen Core
Details
SearXNG logo

SearXNG

38.6k
SearXNG is a metasearch engine that lets users search the web without being tracked or profiled.
Search EnginesCopyleft LicenseSelf Hosting Solutions+1
Details
blocky logo

blocky

7.0k
Blocky is a DNS proxy and ad-blocker for local networks, built in Go.
DNS ServersPermissive LicenseProxy Servers+2
Fully FOSS
Details
Lura logo

Lura

6.8k
An open framework for building ultra-performance API gateways and proxy generators with middlewares.
API ManagementProxy ServersNetwork Utilities+1
Details