Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Matt Keeler 123bc95e1a
Add Common Controller Caching Infrastructure (#19767)
11 months ago
..
acl Move contributing to docs 3 years ago
cli Move contributing to docs 3 years ago
client-agent Move contributing to docs 3 years ago
cluster-federation docs: simplify agent docs slugs 3 years ago
cluster-membership Move contributing to docs 3 years ago
config OSS -> CE (community edition) changes (#18517) 1 year ago
contributing Add changelog creation to contributor docs 3 years ago
debug Add some docs on pprof usage (#12551) 3 years ago
http-api Move contributing to docs 3 years ago
persistence Add engineering docs for controllers and v2 architecture (#19671) 1 year ago
rpc grpc: rename public/private directories to external/internal (#13721) 2 years ago
service-discovery fix: missing UDP field in checkType (#14885) 2 years ago
service-mesh docs: add envoy to the proxycfg diagram (#16834) 2 years ago
v2-architecture Add Common Controller Caching Infrastructure (#19767) 11 months ago
README.md Add engineering docs for controllers and v2 architecture (#19671) 1 year ago
consul-mermaid-theme.json Move contributing to docs 3 years ago
faq.md Move contributing to docs 3 years ago
overview.mmd Move contributing to docs 3 years ago
overview.svg Move contributing to docs 3 years ago

README.md

Consul Developer Documentation

See our contributing guide to get started.

This directory contains documentation intended for anyone interested in understanding, and contributing changes to, the Consul codebase.

Overview

This documentation is organized into the following categories. Each category is either a significant architectural layer, or major functional area of Consul. These documents assume a basic understanding of Consul's feature set, which can be found in the public user documentation.

Overview

source

Contents

  1. Command-Line Interface (CLI)
  2. HTTP API
  3. Agent Configuration
  4. RPC
  5. Cluster Persistence
  6. V2 Architecture
  7. Client Agent
  8. Service Discovery
  9. Service Mesh (Connect)
  10. Cluster Membership
  11. Key/Value Store
  12. ACL
  13. Multi-Cluster Federation

Also see the FAQ.

Other Docs

  1. Integration Tests
  2. Upgrade Tests
  3. Remote Debugging Integration Tests
  4. Peering Common Topology Tests

Important Directories

Most top level directories contain Go source code. The directories listed below contain other important source related to Consul.

  • ui contains the source code for the Consul UI.
  • website contains the source for consul.io. A pull requests can update the source code and Consul's documentation at the same time.
  • .github contains the source for our CI and GitHub repository automation.
  • .changelog contains markdown files that are used by hashicorp/go-changelog to produce the CHANGELOG.md.
  • build-support contains bash functions and scripts used to automate. development tasks. Generally these scripts are called from the Makefile.
  • grafana contains the source for a Grafana dashboard that can be used to monitor Consul.

Contributing to these docs

This section is meta documentation about contributing to these docs.

Diagrams

The diagrams in these documents are created using the mermaid-js live editor. The mermaid-js docs provide a complete reference for how to create and edit the diagrams. Use the consul-mermaid-theme.json (paste it into the Config tab in the editor) to maintain a consistent Consul style for the diagrams.