WordPress MultiSite and Vagrant

As a continual effort to empower every business unit at HootSuite to own and edit their content online, a month ago we put together a team to develop a scalable infrastructure to quickly spin up branded and functional WordPress installation.

To accomplish this we embraced WordPress Multi Site (WPMU) for the technical architecture and Vagrant for development environment. There are a lot of Vagrant Box’s for WordPress Development available, as well as a lot of documentation and open source solutions for WPMU but none that quite fit our requirements.

Requirements

  • Install new sites in parallel domains from original installation (see subdomain structure)
  • Vagrant dev environment mirrors production as close as possible
  • Custom domain mapping that works on production and Vagrant box
  • Use Grunt.js for build tasks

Subdomain Structure

  • Initial Installation – wordpress.mydomain.com
  • First Subdomain – site1.mydomain.com
  • Second Subdomain – site2.mydomain.com (and so forth)

Open Source Solution

Since there didn’t appear to be an existing solution for this set of requirements we wanted to open source this even though it’s for a pretty niche set of requirements.

Check out the GitHub repository for the Vagrant Box as well as documentation on how to get up and running with this. As always, feedback and pull requests are welcome!