Skip to content

cagedtornado/centralconfig

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

centralconfig Circle CI Go Report Card stable

A simple REST based service for managing application configuration across a cluster.
Runs natively on: Linux, Windows, OSX, FreeBSD, NetBSD, OpenBSD, and even Raspberry Pi.

Storage back-ends supported:

Quick start

To get up and running, grab the latest release for your platform

Start the server:

centralconfig serve

Then visit the url http://localhost:3000 and you can add/edit your configuration through the built-in web interface.

If no other configuration is specified, BoltDB will be used to store your config items in a file called 'config.db' in the working directory.

Docker quick start

To use the centralconfig docker image:

Install Docker

Start the server:

docker run --restart=on-failure -d -p 3000:3000 cagedtornado/centralconfig:latest

Configuration

To customize the config, first generate a default config file (with the name centralconfig.yaml):

centralconfig defaults > centralconfig.yaml

Supported environment variables

If you're using centralconfig in as part of a 12 factors app environment or just want to set centralconfig service settings through environment variables, you have the following settings available:

Command Description
SERVER.SSLCERT Path to the SSL certificate file
SERVER.SSLKEY Path to the SSL certificate key
DATASTORE.TYPE The type of backing storage for configuration. One of: mysql, mssql, boltdb
DATASTORE.ADDRESS Location of the backing store
DATASTORE.DATABASE Database name to use in the backing store
DATASTORE.USER Databse user to use
DATASTORE.PASSWORD Database password to use

Example (with docker)

docker run --restart=unless-stopped -d -p 3800:3000 -v /private/etc/ssl:/certs -e "SERVER.SSLCERT=/certs/sslcert.pem" -e "SERVER.SSLKEY=/certs/sslcert.key" -e "DATASTORE.TYPE=mysql" -e "DATASTORE.ADDRESS=mysqldatabaseserver:3306" -e "DATASTORE.DATABASE=centralconfig" -e "DATASTORE.USER=myusername" -e "DATASTORE.PASSWORD=thepasswordhere" cagedtornado/centralconfig:154