Project URL: https://github.com/jumanjihouse/puppet-on-coreos
Docker registry: https://registry.hub.docker.com/u/jumanjiman/puppet/
Image metadata: http://microbadger.com/images/jumanjiman/puppet
Run Puppet inside a container such that it affects the state of the underlying CoreOS host.
This repo and docker image tracks the latest Puppet 3.x version. If you want an image that tracks Puppet 4.x, see the PuppetLabs repo.
If you want to run Puppet Master in a container, see my docker-puppet git repo.
Cloud-init is fine for bootstrapping CoreOS hosts, but sometimes you want to:
- consolidate inventory data (facter facts) in PuppetDB for all your hosts
- use a single cloud-config for all CoreOS hosts, then use Puppet to make minor config changes in an idempotent manner
See also these blog posts:
- Using Puppet with CoreOS, rkt, Flannel and etcd
- Puppet in Docker: running Puppet on container-centric infrastructure
Build images:
ci/build.sh
Run simple tests:
ci/test.sh
The test harness uses BATS. Output resembles:
1..6
ok 1 list users inside container
ok 2 list groups inside container
ok 3 # skip (requires systemctl) manipulate systemd on host OS
ok 4 facter works against host OS
ok 5 show puppet help
ok 6 puppet works against host OS
See LICENSE in this git repo.