Switch branches/tags
Find file History
Dave Johnson
Dave Johnson Merge pull request #167 from sadsfae/master
Update WP version to 4.6, make firewalld rules non-fatal
Latest commit 87718c7 Nov 2, 2016


WordPress+Nginx+PHP-FPM+MariaDB Deployment

  • Requires Ansible 1.2 or newer
  • Expects CentOS/RHEL 7.x host/s

RHEL7 version reflects changes in Red Hat Enterprise Linux and CentOS 7:

  1. Network device naming scheme has changed
  2. iptables is replaced with firewalld
  3. MySQL is replaced with MariaDB

These playbooks deploy a simple all-in-one configuration of the popular WordPress blogging platform and CMS, frontend by the Nginx web server and the PHP-FPM process manager. To use, copy the hosts.example file to hosts and edit the hosts inventory file to include the names or URLs of the servers you want to deploy.

Then run the playbook, like this:

ansible-playbook -i hosts site.yml

The playbooks will configure MariaDB, WordPress, Nginx, and PHP-FPM. When the run is complete, you can hit access server to begin the WordPress configuration.

Ideas for Improvement

Here are some ideas for ways that these playbooks could be extended:

  • Parameterize the WordPress deployment to handle multi-site configurations.
  • Separate the components (PHP-FPM, MySQL, Nginx) onto separate hosts and handle the configuration appropriately.
  • Handle WordPress upgrades automatically.

We would love to see contributions and improvements, so please fork this repository on GitHub and send us your changes via pull requests.