Jeff Geerling's Ansible Content

Jeff Geerling (geerlingguy) maintains a large variety of open source Ansible content. This website catalogs it all.

About Jeff Geerling (geerlingguy)

Jeff Geerling is an author and software developer from St. Louis, MO. He started using Ansible in 2013 and maintains numerous Ansible works.

Ansible Books

Ansible for DevOps Ansible for Kubernetes
Ansible for DevOps Ansible for Kubernetes

Project Maintenance Status

I maintain over 250 open source projects and two bestselling books, and without some level of automation (and maybe a little sleep from time to time), it would be impossible for me to keep all the projects relevant.

I use a stale issue bot to clean up repository issues and PRs, and I also sometimes informally put a project into ‘maintenance only’ mode. That is indicated in the listings below using the following conventions:

Icon Description
Actively used and maintained.
! Maintenance and bugfixes only.
Not maintained.

Table of Contents

Ansible-based Operators

Name Test Status Maintained? Repository
Drupal Operator Build Status GitHub
MariaDB Operator Build Status GitHub
Mcrouter Operator Build Status ! GitHub
Ansible Tower/AWX Operator Build Status GitHub

Back to Top

Container Images Built with Ansible

Name Test Status Maintained? Repository
geerlingguy/drupal Build Status GitHub
geerlingguy/fathom Build Status GitHub
geerlingguy/php-apache Build Status GitHub
geerlingguy/solr Build Status GitHub

Back to Top

Container Images for Ansible Testing

Name Test Status Maintained? Repository
geerlingguy/docker-ubuntu2004-ansible Build Status GitHub
geerlingguy/docker-ubuntu1804-ansible Build Status GitHub
geerlingguy/docker-ubuntu1604-ansible Build Status GitHub
geerlingguy/docker-ubuntu1404-ansible Build Status GitHub
geerlingguy/docker-ubuntu1204-ansible Build Status GitHub
geerlingguy/docker-rockylinux8-ansible CI GitHub
geerlingguy/docker-centos8-ansible Build Status GitHub
geerlingguy/docker-centos7-ansible Build Status GitHub
geerlingguy/docker-centos6-ansible Build Status GitHub
geerlingguy/docker-debian10-ansible Build Status GitHub
geerlingguy/docker-debian9-ansible Build Status GitHub
geerlingguy/docker-debian8-ansible Build Status GitHub
geerlingguy/docker-ubi8-ansible Build Status GitHub
geerlingguy/docker-amazonlinux2-ansible Build Status GitHub
geerlingguy/docker-fedora34-ansible CI GitHub
geerlingguy/docker-fedora33-ansible Build Status GitHub
geerlingguy/docker-fedora32-ansible Build Status GitHub
geerlingguy/docker-fedora31-ansible Build Status GitHub
geerlingguy/docker-fedora30-ansible Build Status GitHub
geerlingguy/docker-fedora29-ansible Build Status GitHub
geerlingguy/docker-fedora27-ansible Build Status GitHub
geerlingguy/docker-fedora24-ansible Build Status GitHub

See also: Testing your roles with Molecule

Back to Top

Ansible Collections

Name Test Status Maintained? Repository
geerlingguy.k8s Build Status GitHub
geerlingguy.mac CI GitHub
geerlingguy.php_roles Build Status GitHub

Back to Top

Ansible Roles

Name Test Status Maintained? Repository
geerlingguy.adminer CI GitHub
geerlingguy.ansible CI GitHub
geerlingguy.apache CI GitHub
geerlingguy.apache-php-fpm CI GitHub CI GitHub
geerlingguy.awx CI GitHub
geerlingguy.backup CI GitHub
geerlingguy.bad_judgement CI GitHub
geerlingguy.blackfire CI GitHub
geerlingguy.certbot CI GitHub
geerlingguy.clamav CI GitHub
geerlingguy.collectd-signalfx CI GitHub
geerlingguy.composer CI GitHub
geerlingguy.daemonize CI GitHub
geerlingguy.docker CI GitHub
geerlingguy.docker_arm CI GitHub
geerlingguy.dotfiles CI GitHub
geerlingguy.drupal CI GitHub
geerlingguy.drush CI GitHub
geerlingguy.ecr_container_build CI GitHub
geerlingguy.elasticsearch CI GitHub
geerlingguy.elasticsearch-curator CI GitHub
geerlingguy.exim CI GitHub
geerlingguy.fathom CI GitHub
geerlingguy.filebeat CI GitHub
geerlingguy.firewall CI GitHub
geerlingguy.fluentd CI GitHub
geerlingguy.git CI GitHub
geerlingguy.github-users CI GitHub
geerlingguy.gitlab CI GitHub
geerlingguy.glusterfs CI GitHub
geerlingguy.gogs CI GitHub
geerlingguy.haproxy CI GitHub
geerlingguy.hdparm CI GitHub
geerlingguy.helm CI GitHub
geerlingguy.htpasswd CI GitHub CI GitHub
geerlingguy.jenkins CI GitHub
geerlingguy.k8s_manifests CI GitHub
geerlingguy.kibana CI GitHub
geerlingguy.kubernetes CI GitHub
geerlingguy.logstash CI GitHub
geerlingguy.mailhog CI GitHub
geerlingguy.memcached CI GitHub
geerlingguy.munin CI GitHub
geerlingguy.munin-node CI GitHub
geerlingguy.mysql CI GitHub
geerlingguy.nfs CI GitHub
geerlingguy.nginx CI GitHub
geerlingguy.nodejs CI GitHub
geerlingguy.ntp CI GitHub
geerlingguy.packer CI GitHub
geerlingguy.packer-debian CI GitHub
geerlingguy.packer_rhel CI GitHub
geerlingguy.passenger CI GitHub
geerlingguy.php CI GitHub
geerlingguy.php-memcached CI GitHub
geerlingguy.phpmyadmin CI GitHub
geerlingguy.php-mysql CI GitHub
geerlingguy.php-pear CI GitHub
geerlingguy.php-pecl CI GitHub
geerlingguy.php-pgsql CI GitHub
geerlingguy.php-redis CI GitHub
geerlingguy.php-tideways CI GitHub
geerlingguy.php-versions CI GitHub
geerlingguy.php-xdebug CI GitHub
geerlingguy.php-xhprof CI GitHub
geerlingguy.pimpmylog CI GitHub
geerlingguy.pip CI GitHub
geerlingguy.postfix CI GitHub
geerlingguy.postgresql CI GitHub
geerlingguy.puppet CI GitHub
geerlingguy.rabbitmq CI GitHub
geerlingguy.raspberry-pi CI GitHub
geerlingguy.redis CI GitHub
geerlingguy.repo-dotdeb CI GitHub
geerlingguy.repo-epel CI GitHub
geerlingguy.repo-puias CI GitHub
geerlingguy.repo-remi CI GitHub
geerlingguy.ruby CI GitHub
geerlingguy.samba CI GitHub CI GitHub
geerlingguy.solr CI GitHub
geerlingguy.ssh-chroot-jail CI GitHub
geerlingguy.supervisor CI GitHub
geerlingguy.svn CI GitHub
geerlingguy.svn2git CI GitHub
geerlingguy.swap CI GitHub
geerlingguy.varnish CI GitHub

Back to Top

Ansible Projects

Name and Link Test Status Maintained?
Ansible Requirements Updater N/A
Mac Development Playbook CI
Packer Boxes Validate Packer JSON files
Drupal VM CI
Raspberry Pi Dramble Build Status
Drupal Pi Build Status
Turing Pi Cluster Build Status !
Ansible Vagrant Examples N/A !

Also see all my blog posts about Ansible and all my YouTube videos about Ansible.

Back to Top

Ansible Videos and Presentations

Place and Date Title
April 2020
Ansible 101 streaming series
DrupalCon Seattle 2019
November 26, 2019
Everything I know about Kubernetes I learned from a cluster of Raspberry Pis
AnsibleFest Atlanta 2019
September 25, 2019
There’s a Role for that! How to evaluate community roles for your playbook
AnsibleFest Austin 2018
August 21, 2018
Make your Ansible playbooks flexible, maintainable, and scalable
MidCamp 2018
March 10, 2018
Jenkins or: How I learned to stop worrying and love automation
AnsibleFest SF 2016
July 28, 2016
Ansible Roles for Fun and Profit!
php[tek] 2016
May 25, 2016
Highly Available Drupal on a Raspberry Pi Cluster
July 27, 2015
Nginx Load Balancer Visualization on a Cluster of Raspberry Pis
July 14, 2015
Ansible 101 on a Cluster of Raspberry Pi 2s
MidCamp 2015
March 21, 2015
Ansible + Drupal: A Fortuitous DevOps Match
March 8, 2015
Ansible serial/forks demo on a Cluster of Raspberry Pis
DrupalCon Austin
June 5, 2014
DevOps for Humans: Ansible for Drupal Deployment Victory!
January 14, 2014
Local Dev on Virtual Machines - Vagrant, VirtualBox and Ansible

Back to Top


This site was inspired by Robert de Bock’s similar Ansible roles site.

You can view this site's source on GitHub. It is hosted on GitHub Pages and uses a theme by mattgraham.