Marathon Friendly Version of Consul
Pull the docker image from Docker hub as:
$ docker pull jeremykuhnash/consul:7.4
By default, this will pull the latest image.
The Consul
configuration files are generated on the fly as the container runs.
For a complete documentation on Consul
configuration parameters, check
Consul Agent.
The image supports the following environment variables:
DATACENTER
: name of the consul datacenter (default:consul-dc
) (equivalent of-dc
CLI flag)LOG_LEVEL
: level of log verbosity (default:INFO
) (equivalent of-log-level
CLI flag)NETWORK_INTERFACE
: network interface to bind to (default:eth0
) (this is used byBIND_ADDR
)BIND_ADDR
: network interface to bind to (default:0.0.0.0
) (equivalent of-bind
CLI flag) (this overridesNETWORK_INTERFACE
)BOOTSTRAP_EXPECT
: number of nodes to declare healthy quorum (default:1
) (equivalent of-bootstrap-expect
CLI flag)
The run command looks like:
$ docker run -d -P jeremykuhnash/consul:7.4 MODE
The two positional arguments are:
MODE
: mode of theConsul
node, can take valuesserver
oragent
JOIN_ADDR
: a valid FQDN or IP address of a peer node whose cluster to join, when starting the first node, this argument can be skipped.
Git clone this repo to your laptop or server
A Makefile is included to build the Docker image. Feel free to use your own or project specific tag
To build the latest image from source, run
$ make image
$ make run``