Repolode
apolloconfig

apolloconfig/apollo

A centralized configuration management system for microservices, with real-time pushes, versioned releases, grayscale rollouts, and audit logs.

Stars
29,816
Forks
10,134
Open issues
156
Last commit
5 days ago

What is it?

Apollo centrally manages configuration across different applications, environments, and clusters from one web interface. Applications read their settings through SDKs, and changes published in Apollo reach running clients in near real time without a restart.

The server is built on Spring Boot and Spring Cloud and runs as a standalone Java process without an external application container such as Tomcat. Its only external dependency is MySQL. The Java SDK has no framework dependency and also offers Spring and Spring Boot integration, and a .NET SDK is available. Other languages can use the HTTP API.

Each release is versioned so configurations can be rolled back, and releases can be limited to a subset of instances before a full rollout. Editing and publishing are separate permissions, and every operation is logged.

Key features

  • 01Centralized management of configurations across environments, clusters, and namespaces
  • 02Real-time push of published changes to clients
  • 03Versioned releases with rollback support
  • 04Grayscale release to selected instances
  • 05Permission control, release approval, and audit logs
  • 06Java, .NET, and HTTP API client access

Use cases

  • Managing shared and per-cluster settings for many microservices
  • Changing feature flags or runtime parameters without redeploying
  • Rolling out configuration changes to a subset of instances first

Quick start

  1. 1

    Follow the Quick Start guide to run Apollo locally

  2. 2

    Or follow the Docker Quick Start guide to run it in containers

Things to know

  • Self-hosting the server requires Java and MySQL to be installed and configured.
  • The Java and .Net SDKs are the native clients, and other languages depend on third-party SDKs or the HTTP API.

In collections

Topics

FAQ

What is apollo?
A centralized configuration management system for microservices, with real-time pushes, versioned releases, grayscale rollouts, and audit logs. Apollo centrally manages configuration across different applications, environments, and clusters from one web interface. Applications read their settings through SDKs, and changes published in Apollo reach running clients in near real time without a restart.
Is apollo free to use? What license does it have?
apollo is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is apollo still maintained?
Actively maintained. The last commit to apollo was on Nov 2, 2026.
What can I use apollo for?
Managing shared and per-cluster settings for many microservices Changing feature flags or runtime parameters without redeploying Rolling out configuration changes to a subset of instances first
How do I install apollo?
Follow the Quick Start guide to run Apollo locally Or follow the Docker Quick Start guide to run it in containers
Where can I get apollo?
The source code and installation instructions are on GitHub: https://github.com/apolloconfig/apollo

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects