# kelseyhightower/confd

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/kelseyhightower-confd).**

8,424 stars · 1,396 forks · Go · MIT

## Links

- GitHub: https://github.com/kelseyhightower/confd
- awesome-repositories: https://awesome-repositories.com/repository/kelseyhightower-confd.md

## Description

confd is a dynamic configuration templating engine and manager that generates local application configuration files using data from environment variables and distributed key-value stores. It functions as a client for stores such as etcd and Consul, monitoring these sources for changes to automate the creation and update of files on the local filesystem.

The tool serves as an application process reloader, capable of automatically restarting or signaling dependent applications when their underlying configuration files are modified. This ensures that updated settings from a centralized source of truth are applied to services across a cluster of machines.

The system covers distributed key-value integration and automated configuration workflows, utilizing a template-based approach to merge remote data into local files.

## Tags

### DevOps & Infrastructure

- [Dynamic Configuration Management](https://awesome-repositories.com/f/devops-infrastructure/dynamic-configuration-management.md) — Manages application settings in remote stores and propagates updates to local files in real time.
- [Configuration-Driven Templating Engines](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/template-and-generation-engines/configuration-driven-templating-engines.md) — Processes templates based on input data from KV stores to generate application configuration files.
- [KV-Based Configuration Managers](https://awesome-repositories.com/f/devops-infrastructure/kv-based-configuration-managers.md) — Generates and manages local configuration files using data stored in etcd or Consul.
- [File-Change-Triggered Restarts](https://awesome-repositories.com/f/devops-infrastructure/restart-automation/file-change-triggered-restarts.md) — Automatically restarts dependent applications when their corresponding configuration files are modified on disk. ([source](https://cdn.jsdelivr.net/gh/kelseyhightower/confd@master/README.md))
- [Service Configuration Reloading](https://awesome-repositories.com/f/devops-infrastructure/server-configuration-management/service-configuration-reloading.md) — Automates the reloading of system service configurations to apply updated settings from a central store.
- [Service Discovery and Configuration Platforms](https://awesome-repositories.com/f/devops-infrastructure/service-discovery-and-configuration-platforms.md) — Integrates with Consul to provide centralized service discovery and dynamic configuration management.

### Data & Databases

- [Distributed Configuration Store Integrations](https://awesome-repositories.com/f/data-databases/distributed-configuration-store-integrations.md) — Connects local configuration to distributed key-value stores to ensure consistency across a cluster.
- [Key-Value Store Clients](https://awesome-repositories.com/f/data-databases/key-value-store-clients.md) — Acts as a client for distributed stores like etcd and Consul to monitor and retrieve configuration data.
- [Local Filesystem Storage](https://awesome-repositories.com/f/data-databases/storage-abstraction/local-filesystem-storage.md) — Persists rendered configuration templates directly to the local filesystem for application use.
- [Configuration Workflows](https://awesome-repositories.com/f/data-databases/backup-and-recovery/kubernetes-resource-backups/etcd-snapshot-backups/etcd-infrastructure-administration/configuration-workflows.md) — Automates the workflow of pulling application settings from etcd to update local configuration files.

### Development Tools & Productivity

- [Configuration File Generators](https://awesome-repositories.com/f/development-tools-productivity/configuration-generators/configuration-file-generators.md) — Produces standard configuration files by merging templates with data from environment variables and KV stores. ([source](https://cdn.jsdelivr.net/gh/kelseyhightower/confd@master/README.md))
- [Process-Level Auto-Restarts](https://awesome-repositories.com/f/development-tools-productivity/hot-code-reloading/process-level-auto-restarts.md) — Restarts application processes automatically whenever their configuration files are changed.

### Operating Systems & Systems Programming

- [File Template Generators](https://awesome-repositories.com/f/operating-systems-systems-programming/system-administration-maintenance/file-system-management/file-systems/file-template-generators.md) — Generates local configuration files by processing text templates with external data sources.

### Software Engineering & Architecture

- [Polling Mechanisms](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures/polling-mechanisms.md) — Uses polling mechanisms to monitor distributed key-value stores and trigger local configuration updates.
- [Provider Abstractions](https://awesome-repositories.com/f/software-engineering-architecture/provider-abstractions.md) — Implements a common abstraction layer to fetch configuration data from etcd, Consul, or environment variables.

### Part of an Awesome List

- [Networking and Discovery](https://awesome-repositories.com/f/awesome-lists/devops/networking-and-discovery.md) — Template-based configuration management for distributed systems.
- [Service Discovery](https://awesome-repositories.com/f/awesome-lists/devops/service-discovery.md) — Manages configuration files using templates and external data.
- [Configuration Management](https://awesome-repositories.com/f/awesome-lists/devtools/configuration-management.md) — Configuration management and template tool.
- [Software Tools](https://awesome-repositories.com/f/awesome-lists/more/software-tools.md) — Manages local application configs using etcd or consul.
