This is a scaffolding that should be used for a new WordPress project. This box consists of:
- Vagrant
- Ubuntu 14.04 Trusty
- Chef Solo
- WordPress (latest version)
Server software:
- Apache
- PHP
- MySQL
It automatically installs additional tools:
- WP CLI
- WP makepot.php i18n Tool
- WordMove
- WordPress CodeSniffer
- PHP xDebug extension - it is already configured for remote debugging from your IDE (idekey option is set to "vagrant")
WordPress plugins:
- vagrant-bindfs for Linux/OSX hosts.
- vagrant-omnibus is a vagrant plugin that ensures the desired version of Chef is installed via the platform-specific Omnibus packages.
- vagrant-hostmanager to automatically configure the
host
file on your guest and host (Linux only) machines it is recommended to install 'vagrant-hostmanager' plugin:vagrant plugin install vagrant-hostmanager
- vagrant-vbguest is a Vagrant plugin which automatically installs the host's VirtualBox Guest Additions on the guest system.
- Clone the repository. Please note:
chef_gem
andrvm
cookbooks are added to main repository as submodules. Rungit submodule update --init
to clone these cookbooks. - Install on of the following
- If you want to use 'rsync' synchronization on Linux systems
Ubuntu:apt-get -y install rsync
CentOS:yum -y install rsync
Then you should set SYNC_TYPE to 'rsync' in the Vagrantfile - If you want to use 'nfs' synchronization on Linux systems
Ubuntu:apt-get -y install nfs-kernel-server nfs-common
CentOS:yum -y install nfs-utils nfs-utils-lib
Then you should set SYNC_TYPE to 'nfs' in the Vagrantfile
- If you want to use 'rsync' synchronization on Linux systems
Set additional configurations in the top of the Vagrantfile (like HOSTNAME, TABLE_PREFIX etc.)
Later this configurations will be moved to the separate config.yml.dist
file.
Now run vagrant up
:
- if there is no any wordpress installation in the ./wordpress directory, the latest wordpress version will be installed;
- if there is a ./worpdress/dump.sql file it will be automatically imported to the database during vagrant VM installation.
- Domain: wordpress.local
- IP: 192.168.33.10
- Syncronization type: nfs (for Linux only)
- DB name: wordpress
- DB user: root
- DB password: root
- Table prefix: wp_