Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci refresh cache key and fix comments Jan 4, 2019
.github add codeowners for consul docs Jan 3, 2019
acl New ACLs (#4791) Oct 19, 2018
agent connect: Forward intention RPCs if this isn't the primary Jan 22, 2019
api agent: display messages from serf in cli (#5236) Jan 22, 2019
bench Gets benchmarks running again and does a rough pass for 0.7.1. Nov 29, 2016
build-support Dont expect the freebsd/arm build Oct 19, 2018
command agent: display messages from serf in cli (#5236) Jan 22, 2019
connect connect: remove additional trust-domain validation (#4934) Nov 12, 2018
demo demo: Added udp port forwarding May 30, 2018
ipaddr New config parser, HCL support, multiple bind addrs (#3480) Sep 25, 2017
lib connect: tame thundering herd of CSRs on CA rotation (#5228) Jan 22, 2019
logger Connect Envoy Command (#4735) Oct 10, 2018
sentinel Renames stubs to be more consistent. Nov 30, 2017
service_os Changes made : Jun 29, 2018
snapshot snapshot: read meta.json correctly. (#5193) Jan 8, 2019
terraform terraform: fix formatting of (#4580) Oct 24, 2018
test snapshot: read meta.json correctly. (#5193) Jan 8, 2019
testrpc Bugfix: Use "%#v" when formatting structs (#4600) Aug 28, 2018
testutil testutil: If testing.T is nil panic with error (#4725) Oct 26, 2018
tlsutil agent: honor when ca is set but verify_outgoing is disabled (#4826) Dec 17, 2018
types Removes remoteConsuls in favor of the new router. Mar 16, 2017
ui-v2 UI: Text change and clarity Node Health > Health Checks (#5115) Jan 17, 2019
ui update ffi to dodge CVE-2018-1000201 (#4670) Sep 14, 2018
vendor Revendor serf to pull in keyring list truncation changes. (#5251) Jan 22, 2019
version Put the tree in v1.4.1 dev mode Nov 15, 2018
watch Fix data race (#5029) Jan 8, 2019
website website: update nokogiri (#5252) Jan 22, 2019
.dockerignore Update the scripting Jun 15, 2018
.gitignore merge feedback: fix typos; actually use deliverLatest added previousl… Oct 10, 2018
.travis.yml Bump Go version for CI and build to 1.11.1 (#4782) Oct 11, 2018 Update Jan 22, 2019
GNUmakefile CA Provider Plugins (#4751) Jan 7, 2019 docs: correct link to top level agent package (#4750) Oct 4, 2018
LICENSE Initial commit Nov 4, 2013 add copyright notice file Jul 9, 2018 Contribution guide (#4704) Oct 5, 2018
Vagrantfile Adds a basic Linux Vagrant setup, stolen from Nomad. Oct 6, 2017
main.go Added Side Effect import for Windows Service Jun 18, 2018
main_test.go Adding basic CLI infrastructure Dec 19, 2013

Consul Build Status Join the chat at

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.

Consul provides several key features:

  • Service Discovery - Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. External services such as SaaS providers can be registered as well.

  • Health Checking - Health Checking enables Consul to quickly alert operators about any issues in a cluster. The integration with service discovery prevents routing traffic to unhealthy hosts and enables service level circuit breakers.

  • Key/Value Storage - A flexible key/value store enables storing dynamic configuration, feature flagging, coordination, leader election and more. The simple HTTP API makes it easy to use anywhere.

  • Multi-Datacenter - Consul is built to be datacenter aware, and can support any number of regions without complex configuration.

  • Service Segmentation - Consul Connect enables secure service-to-service communication with automatic TLS encryption and identity-based authorization.

Consul runs on Linux, Mac OS X, FreeBSD, Solaris, and Windows. A commercial version called Consul Enterprise is also available.

Please note: We take Consul's security and our users' trust very seriously. If you believe you have found a security issue in Consul, please responsibly disclose by contacting us at

Quick Start

An extensive quick start is viewable on the Consul website:


Full, comprehensive documentation is viewable on the Consul website:


Thank you for your interest in contributing! Please refer to for guidance.