WordPress and Web Dev Environment on Hyper-v
Robert Wilde
WordCamp SunShine Coast 2016
Some Quick Questions for you, please.
Who uses Windows as primary Dev environment?
How many people have used a Hypervisor, Virtualbox, VMware, Parallels ?
How many people have used Windows Hyper-V?
What I hardware I use for Dev on Windows
CPU - XEON E3-1230 V2 (comparable i7 4770k)
Mobo - Intel DZ77GA-70k
Mem - 32GB DDR3 1600Mhz
Data - Samsung 128GB Pro SSD� - Samsung 250GB EVO SSD� - 3 x 1TB Samsung HDD
Monitors - 27”, 22”, 24”, 24”
My Dev System
Must Have Essentials for Windows Dev
Flexible Recommendations
Windows comes to the Party
Windows Action pack - IUR Software
$475 USD
$237.50!!!�Use code WELCOME2ACTIONPACK 50%�(*Limited time offer until June 30, 2016)
Also look at �https://partner.microsoft.com/en-AU/membership/action-pack�https://www.microsoft.com/bizspark
Setup Hyper-v
Or
PowerShell
Open a PowerShell console as Administrator.
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Configure Hyper-V
Open Hyper-V manager
POST Ubuntu Install
Complete updates
Add your User to SUDO group
sudo su�gpasswd -a itadmin sudo�exit�sudo visudo�itadmin ALL=NOPASSWD: ALL
Update and Upgrade�Sudo SU�apt-get update�apt-get upgrade�apt-get dist-upgrade
Manage domains on Local Machines
Windows 10 users can simply install the module using the command below.�Install-Module PsHosts
https://github.com/richardszalay/pshosts
# List all entries�Get-HostEntry
# Add an entry�Add-HostEntry mysite.local 127.0.0.1
# Disable (comment out) entries�Disable-HostEntry mysite.local
Easy Engine by RTCamp
wget -qO ee rt.cx/ee && sudo bash ee # install easyengine�NGINX, PHP, PHP7, HHVM, MySQL, postfix, wpcli, redis,
sudo ee stack install --web
sudo ee stack install --admin� installs Adminer, phpMyAdmin, phpMemcachedAdmin, FastCGI cleanup script, OPcache, Webgrind, Anemometer.
sudo ee stack install --utils�phpMemcachedAdmin, FastCGI cleanup script, OPcache, Webgrind, Anemometer.
Set WP username, password, email�sudo nano /etc/ee/ee/conf
Post EasyEngine install
Configure EasyEngine settings and BINDFS http://bindfs.org/
All commands completed under root�# Installing bindfs (just the first time) �apt-get update �apt-get -y install bindfs ��# Creating the application mountpoint �mkdir -p /home/itadmin/www �chown -Rf itadmin:itadmin /home/itadmin/www �chmod -Rf 770 /home/itadmin/www
nano /etc/fstab
bindfs#/var/www /home/itadmin/www fuse force-user=itadmin,force-group=itadmin,create-for-user=www-data,create-for-group=www-data,create-with-perms=0770,chgrp-ignore,chown-ignore,chmod-ignore 0 0��mount /home/itadmin/www
Let's build a WordPress site in 1 line
sudo ee site create example.com --wp
Other Options # https://easyengine.io/docs/commands/site/create/
sudo ee site create example.com --html
sudo ee site create example.com --php
sudo ee site create example.com --mysql
WordPress Multisite
sudo ee site create example.com --wpsubdir # With Subdirectoy�sudo ee site create example.com --wpsubdom # With Subdomain
sudo ee site create example.com --wp --php7�sudo ee site create example.com --wp --hhvm
PHPStorm new Project
Other software I use for Developing
You now have a Virtual Dev system on Windows
Time for Questions?
Who am I?
First and Foremost I am a Dad!
Then I am just a super mega nerd!!
1995 - studying Electronic Engineering
1996 - Managing Custom Control Computers for Comalco Aluminium
1997 - Hospitality Sound & Lighting tech / DJ / MC
2003 - Technical/Lighting Director Family Nightclub Brisbane
2005 - PHP Developer
2007 - Microsoft Systems Administrator
2010 - SMB Hardware and Networking Consultant
2013 - Cloud Technology Consultant / WordPress Developer