CentOS 7 Docker container for Ansible playbook and role testing.
latest: Latest stable version of Ansible, on Python 2.7.x.
python2: (Deprecated) Same as
latest, as of early 2020.
python3: Latest stable version of Ansible, but on Python 3.6.x.
The latest tag is a lightweight image for basic validation of Ansible playbooks. The
testing tag also includes a comprehensive suite of Ansible and infrastructure testing tools in case you want them pre-installed.
This image is built on Docker Hub automatically any time the upstream OS container is rebuilt, and any time a commit is made or merged to the
master branch. But if you need to build the image on your own locally, do the following:
cdinto this directory.
docker build -t centos7-ansible .
Note: Switch between
testingdepending on whether you want the extra testing tools present in the resulting image.
docker pull geerlingguy/docker-centos7-ansible:latest(or use the image you built earlier, e.g.
docker run --detach --privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup:ro geerlingguy/docker-centos7-ansible:latest(to test my Ansible roles, I add in a volume mounted from the current working directory with
docker exec --tty [container_id] env TERM=xterm ansible --versionb.
docker exec --tty [container_id] env TERM=xterm ansible-playbook /path/to/ansible/playbook.yml --syntax-check
I use Docker to test my Ansible roles and playbooks on multiple OSes using CI tools like Jenkins and Travis. This container allows me to test roles and playbooks using Ansible running locally inside the container.
Important Note: I use this image for testing in an isolated environment—not for production—and the settings and configuration used may not be suitable for a secure and performant production environment. Use on production servers/in the wild at your own risk!