awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
nginx-proxy avatar

nginx-proxy/docker-gen

0
View on GitHub↗
4,615 stars·616 forks·Go·mit·17 views

Docker Gen

docker-gen is a general-purpose configuration generator that produces configuration files by applying Go templates to live Docker container metadata. It generates dynamic configuration for reverse proxies, log forwarding, log rotation, and other service files based on real-time container state.

The tool watches Docker container lifecycle events—such as start, stop, and die—and automatically re-renders templates each time a change occurs. It supports multiple template jobs defined in a configuration file, executing them sequentially, and can send Unix signals or run commands after regeneration to reload dependent processes. Container filtering via labels, status, or port exposure ensures only relevant containers participate in template generation.

Beyond reverse proxy configuration, docker-gen automates the creation of Fluentd log forwarding entries and logrotate configuration files derived from container metadata and environment variables. Its template-based approach makes it adaptable to any text-based configuration format, enabling integration with a wide variety of services that need dynamic, container-aware configuration.

The project is written in Go and distributed as a single binary, with templates and generated outputs stored as plain files on disk.

Features

  • Container Event Driven Template Engines - Automatically regenerates container configuration files in response to container lifecycle events.
  • Template-Driven Generation Engines - Automatically re-renders templates by monitoring Docker container lifecycle events.
  • Go Template Rendering - Applies Go text/template engine to live container metadata for dynamic configuration generation.
  • Live Container Metadata Renderers - Applies Go templates to live Docker container metadata to produce dynamic configuration files for various services.
  • Container Metadata Configuration Generators - Generates configuration files from live Docker container metadata using user-defined templates.
  • Container Lifecycle Triggered File Regenerations - Monitors Docker container lifecycle events to automatically re-render template files.
  • Event-Driven Triggers - Monitors container lifecycle events to automatically regenerate configuration and trigger external commands.
  • Reverse Proxy Configurations - Generates reverse proxy configuration files from container environment variables mapping virtual hosts to endpoints.
  • Dynamic Reverse Proxy Config Generators - Automatically renders reverse proxy configuration files by mapping container environment variables to virtual host endpoints.
  • Multiple Template Job Pipelines - Generates dynamic configuration by executing a pipeline of template jobs defined in a single configuration file.
  • Logrotate - Generates logrotate configuration files from container metadata for automated log rotation.
  • Sequential Multi-Job Template Executors - Defines multiple template jobs in a configuration file and executes them sequentially for automated configuration generation.
  • Log Rotation Config Generators - Automatically generates logrotate configuration files from container metadata for log rotation.
  • Container Selection Filters - Filters containers based on labels, status, or port exposure to selectively include them in template generation.
  • Label-Based Selection - Filters containers by Docker labels, status, or port exposure to selectively include them in template generation.
  • Log Rotation Configuration Generators - Produces logrotate configuration files based on container metadata for automated log rotation.
  • Log Forwarders - Generates configuration entries to tail and forward container logs to centralized aggregation systems.
  • Log Forwarder Configuration Generators - Generates Fluentd configuration entries to tail and forward container logs to centralized systems.

Star history

Star history chart for nginx-proxy/docker-genStar history chart for nginx-proxy/docker-gen

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does nginx-proxy/docker-gen do?

docker-gen is a general-purpose configuration generator that produces configuration files by applying Go templates to live Docker container metadata. It generates dynamic configuration for reverse proxies, log forwarding, log rotation, and other service files based on real-time container state.

What are the main features of nginx-proxy/docker-gen?

The main features of nginx-proxy/docker-gen are: Container Event Driven Template Engines, Template-Driven Generation Engines, Go Template Rendering, Live Container Metadata Renderers, Container Metadata Configuration Generators, Container Lifecycle Triggered File Regenerations, Event-Driven Triggers, Reverse Proxy Configurations.

What are some open-source alternatives to nginx-proxy/docker-gen?

Open-source alternatives to nginx-proxy/docker-gen include: jwilder/docker-gen — docker-gen is a configuration generator that renders text templates into files using metadata retrieved from Docker… lucaslorentz/caddy-docker-proxy — caddy-docker-proxy is a dynamic HTTP reverse proxy and Docker network ingress controller that automatically generates… kubernetes/ingress-nginx — This project is a Kubernetes Ingress Controller that functions as a layer 7 traffic router and NGINX reverse proxy. It… helmfile/helmfile — Helmfile is a declarative tool for managing Kubernetes Helm releases across multiple environments. It defines the… thehive-project/thehive — TheHive is a security incident response platform and multi-tenant case management system. It functions as a Security… op7418/guizang-ppt-skill — This project is an LLM-powered presentation generator and HTML slide deck framework designed to produce single-file…

Open-source alternatives to Docker Gen

Similar open-source projects, ranked by how many features they share with Docker Gen.
  • jwilder/docker-genjwilder avatar

    jwilder/docker-gen

    4,627View on GitHub↗

    docker-gen is a configuration generator that renders text templates into files using metadata retrieved from Docker containers. It functions as a service discovery tool and template-based orchestrator, mapping container state and environment variables to specific destination paths on a host machine's local storage. The tool automates the update of reverse proxy and service discovery settings in real time as containers are started, stopped, or renamed. It employs sequential template processing and helper functions to filter and sort container data, ensuring stable and consistent configuration

    Go
    View on GitHub↗4,627
  • lucaslorentz/caddy-docker-proxylucaslorentz avatar

    lucaslorentz/caddy-docker-proxy

    4,532View on GitHub↗

    caddy-docker-proxy is a dynamic HTTP reverse proxy and Docker network ingress controller that automatically generates routing configurations by reading labels from Docker containers. It serves as a service discovery tool that detects container IP addresses in real time to route incoming web traffic to the correct backend targets. The project functions as a distributed proxy orchestrator, capable of pushing generated configurations from a central controller to multiple remote server instances to scale request handling. It automates the issuance and renewal of TLS security certificates for prox

    Go
    View on GitHub↗4,532
  • kubernetes/ingress-nginxkubernetes avatar

    kubernetes/ingress-nginx

    19,492View on GitHub↗

    This project is a Kubernetes Ingress Controller that functions as a layer 7 traffic router and NGINX reverse proxy. It serves as a secure network gateway, directing external HTTP and HTTPS traffic to backend services within a cluster based on declarative routing rules. The controller acts as a TLS termination gateway to secure traffic and integrates with Prometheus to expose request metrics and latency data for cluster monitoring. It supports canary deployment workflows by implementing weight-based traffic splitting between different versions of a service. The system manages external access

    Goingress-controllerkubernetesnginx
    View on GitHub↗19,492
  • helmfile/helmfilehelmfile avatar

    helmfile/helmfile

    4,987View on GitHub↗

    Helmfile is a declarative tool for managing Kubernetes Helm releases across multiple environments. It defines the desired state of releases in version-controlled YAML files and synchronizes the cluster to match that state, acting as both a release manager and a state sync orchestrator. The tool layers environment-specific values, secrets, and lifecycle hooks onto shared release definitions, enabling consistent multi-environment deployments. Helmfile distinguishes itself through several integrated capabilities: it generates separate dependency lockfiles per environment for staged rollout of ch

    Gohelmkuberneteskustomize
    View on GitHub↗4,987
  • See all 30 alternatives to Docker Gen→