Keep docker hosts tidy.
There are three installation options
docker pull yelp/docker-custodian
docker run -ti \
-v /var/run/docker.sock:/var/run/docker.sock \
yelp/docker-custodian dcgc --help
First build the package (requires dh-virtualenv)
dpkg-buildpackage -us -uc
Then install it
dpkg -i ../docker-custodian_*.deb
pip install git+https://github.com/Yelp/docker-custodian.git
Remove old docker containers and docker images.
dcgc
will remove stopped containers and unused images that are older than "max age". Running containers, and images which are used by a container are never removed.
Maximum age can be specificied with any format supported by pytimeparse.
Example:
dcgc --max-container-age 3days --max-image-age 30days
dcgc
supports an image exclude list. If you have images that you'd like to keep around forever you can use the exclude list to prevent them from being removed.
--exclude-image
Never remove images with this tag. May be specified more than once.
--exclude-image-file
Path to a file which contains a list of images to exclude, one
image tag per line.
Stop containers that have been running for too long.
dcstop
will docker stop
containers where the container name starts with --prefix and it has been running for longer than --max-run-time.
Example:
dcstop --max-run-time 2days --prefix "projectprefix_"