Red Hat CentOS Stream 9 Ansible Test Image

Red Hat CentOS Stream 9 Docker container for Ansible playbook and role testing.

Tags

  • latest: Latest stable version of Ansible.

The latest tag is a lightweight image for basic validation of Ansible playbooks.

How to Build

  1. Install Docker.
  2. cd into this directory.
  3. Run docker build -t centosstream9-ansible .

How to Use

  1. Install Docker.
  2. Pull this image from GitHub: docker pull ghcr.io/bcook254/docker-centosstream9-ansible:latest (or use the image you built earlier, e.g. centosstream9-ansible:latest).
  3. Run a container from the image: docker run --detach --privileged --volume=/sys/fs/cgroup:/sys/fs/cgroup:rw --cgroupns=host ghcr.io/bcook254/docker-centosstream9-ansible:latest (to test my Ansible roles, I add in a volume mounted from the current working directory with --volume=`pwd`:/etc/ansible/roles/role_under_test:ro).
  4. Use Ansible inside the container: a. docker exec --tty [container_id] env TERM=xterm ansible --version b. docker exec --tty [container_id] env TERM=xterm ansible-playbook /path/to/ansible/playbook.yml --syntax-check

Notes

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: This image is 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!

Author

Created in 2023 by Benjamin Cook.

Based on geerlingguy/docker-rockylinux9-ansible, created in 2022 by Jeff Geerling