Getting Started
The basic requirement is to have a local web server on your machine that you can run WordPress on. There are a number of different ways to do that; MAMP, WAMP, XAMPP, etc. The problem with those solutions is that they can be difficult to set up, especially if you want to run more than one copy of WordPress. Another way to run a local web server is to install a virtual machine that runs independently of your desktop or Laptop OS. Again, there are a number of solutions, both free and paid. The solution we recommend is VirtualBox and Vagrant. This combination allows you to create virtual environment much closer to a real web server, and have it automatically set up everything, including WordPress, correctly for you. The full solution we recommend is one called Varying Vagrant Vagrants (VVV), originally developed by 10up and transitioned to a community organisation in 2014.
The following instructions, taken from the VVV Github page, apply to Windows, Mac, and Linux environments.
What is Vagrant?
Vagrant is a “tool for building and distributing development environments”. It works with virtualization software such as VirtualBox to provide a virtual machine that is sandboxed away from your local environment.
The First Vagrant Up
- Start with any operating system.
- Install VirtualBox 4.3.10
- VVV is completely compatible with earlier versions of VirtualBox, so 4.2.22 or earlier would be just fine. Do note that Vagrant had specific issues with 4.2.16. Going as far back as 4.2.10 will likely be of no issue.
- VVV itself leans in the 4.3.x direction in the master branch to stay ahead of the curve.
- Install Vagrant 1.5.4
vagrant
will now be available as a command in your terminal, try it out.- Note: If Vagrant is already installed, use
vagrant -v
to check the version. You may want to consider upgrading if a much older version is in use. - Note: If VirtualBox 4.3.x is installed, Vagrant 1.3.5 or later is required.
- Install the vagrant-hostsupdater plugin with
vagrant plugin install vagrant-hostsupdater
- Note: This step is not a requirement, though it does make the process of starting up a virtual machine nicer by automating the entries needed in your local machine’s
hosts
file to access the provisioned VVV domains in your browser. - If you choose not to install this plugin, a manual entry should be added to your local
hosts
file that looks like this:192.168.50.4 vvv.dev local.wordpress.dev local.wordpress-trunk.dev src.wordpress-develop.dev build.wordpress-develop.dev
- Note that you may need to make the hosts file writable by the user you run Vagrant as for the hosts updater to work without requiring a password.
- Note: This step is not a requirement, though it does make the process of starting up a virtual machine nicer by automating the entries needed in your local machine’s
- Install the vagrant-triggers plugin with
vagrant plugin install vagrant-triggers
- Note: This step is not a requirement. It does allow for various scripts to fire when issuing commands such as
vagrant halt
andvagrant destroy
. - By default, if vagrant-triggers is installed, a
db_backup
script will run on halt, suspend, and destroy that backs up each database to adbname.sql
file in the{vvv}/database/backups/
directory. These will then be imported automatically if starting from scratch. Custom scripts can be added to override this default behavior.
- Note: This step is not a requirement. It does allow for various scripts to fire when issuing commands such as
- Clone or extract the Varying Vagrant Vagrants project into a local directory
git clone git://github.com/Varying-Vagrant-Vagrants/VVV.git vagrant-local
- OR download and extract the repository master zip file
- OR grab a stable release if you’d like some extra comfort.
- Change into the new directory with
cd vagrant-local
- Start the Vagrant environment with
vagrant up
- Be patient as the magic happens. This could take a while on the first run as your local machine downloads the required files.
- Watch as the script ends, as an administrator or
su
password may be required to properly modify the hosts file on your local machine.
- Visit any of the following default sites in your browser:
- http://local.wordpress.dev/ for WordPress stable
- http://local.wordpress-trunk.dev/ for WordPress trunk
- http://src.wordpress-develop.dev/ for trunk WordPress development files
- http://build.wordpress-develop.dev/ for the version of those development files built with Grunt
- http://vvv.dev/ for a default dashboard containing several useful tools
Fancy, yeah?
2 thoughts on “Setting Up Your Machine for Contributor Day”
Comments are closed.