Vagrant with Windows
czyli włóczęga z oknami
Piotr Stapp & Mateusz Janiszewski
http://bit.ly/vagrant-slidesWho are we?
Piotr Stapp
Who are we?
Mateusz Janiszewski
Vagrant definition
A vagrant or a vagabond is a person, often in poverty, who wanders from place to place without a home or regular employment or income. Other synonyms include "tramp," "hobo," and "drifter". A vagrant could be described as being "a person without a settled home or regular work who wanders from place to place and lives by begging"; vagrancy is the condition of such persons.
What is vagrant?
- Vagrant is an open-source tool which helps you create, configure and provision development environments.
- Consider it a wrapper around virtualization software like VMware or VirtualBox and provisioning tools for config management such as Puppet or Chef or even PowerShell :)
Why should I care?
- Easily create disposable, consistent environments
- Set up multiple environments at the same time with one config file, one command.
vagrant up
- Configuration put under source control
- Supports various platforms
Demo time
vagrant up
What will be done:
- Setup clean Windows 2012 on VirtualBox
- Install IIS
- Enable .NET
- Remove default site
- Install this presentation on new AppPool on 80
Vagrant file
- Plain text file in Ruby
- Allows to configure: box, network configuration, scripts to run, shared folders, VM properties
- Easy to create
vagrant init
Vagrant workflow
by VIVEK GITEDemo time
Remote debugging
Where do boxes come from?
- vagrantbox.es
- atlas.hashicorp.com
- vagrantcloud.com
- ...or just create your own box ;)
How do I create my own box?
Box from scratch
- Create and preconfigure a VM - (That's the longest part)
- Run powershell command:
vagrant package --base [VM name] --output [box name].box
Packer
- Packer vagrant post-processor can create boxes from such providers as:
- AWS and Azure
- DigitalOcean
- Hyper-V
- Parallels
- QEMU
- VirtualBox
- VMware
How?
- Packer uses json files as tamplates to create boxes
- git clone Joe Fitzgerald's packer-windows for example json
- You need to provide info for 3 sections:
- builders
- provisioners
- post-processors
packer build [template_name].json
Overview
The end
Slides are on http://stapp.space
Survey is on http://j.mp/vagrantWithWindows
More questions, catch us on:
@ptrstpp950 & @matjanin
piotr.stapp[at]gmail.com & matjaniszewski[at]gmail.com
Survey is on http://j.mp/vagrantWithWindows
More questions, catch us on:
@ptrstpp950 & @matjanin
piotr.stapp[at]gmail.com & matjaniszewski[at]gmail.com