docker-chaos-monkey
docker-chaos-monkey copied to clipboard
A Chaos Monkey system for Docker and Docker Swarm
docker-chaos-monkey
A Chaos Monkey system for Docker Swarm.
Implemented for the book 12 Factor Applications with Docker and Go.
Creating a disposable service
Creating a disposable service is as simple as adding a label role=disposable
.
For example:
docker service create -l role=disposable --name gotwitter titpetric/gotwitter
Running chaos.sh
When running chaos.sh
you can set two environment variables:
-
DOCKER_LABEL
- "key=value" label that services must have to be killed off -
SKIP_WARNING=1
- skip initial warning
Rules
- If the service has only 1 replica (1/1), a container will not be killed.
- If the service has incomplete replicas (4/5), a container will not be killed.
- If no containers are running on the current host, no containers will be killed.
- Only one container per service is killed if the above conditions are met.