Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Title Page
Copyright and Credits
Hands-On DevOps with Vagrant
Dedication
Packt Upsell
Why subscribe?
Packt.com
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
Introduction
Getting started with Vagrant and DevOps
Understanding Vagrant
Vagrant features
Vagrantfile
Boxes
Networking
Provisioning
Plugins
Advantages of Vagrant
Development team
Operations team
Design team
What is VirtualBox?
What is DevOps?
Vagrant for DevOps
Current state of development within DevOps
Vagrant and DevOps
Using Vagrant as a day-to-day DevOps tool
Summary
Installing VirtualBox and Vagrant
Installing VirtualBox and Vagrant on Windows
Prerequisites
System version
CPU architecture
Installing VirtualBox on Windows 10
Installing Vagrant on Windows 10
Installing VirtualBox and Vagrant on Linux
Prerequisites
System version
CPU architecture
Installing VirtualBox on Ubuntu 16.04
Installing Vagrant on Ubuntu 16.04
Installing VirtualBox and Vagrant on macOS
Prerequisites
System version
CPU architecture
Installing VirtualBox on Mac OS 10.11.3
Installing Vagrant on macOS 10.13.3
Summary
Command Line-Interface - Vagrant Commands
Vagrant command overview
Vagrant commands in depth
A brief note on formatting commands
General Vagrant commands and sub-commands
The list-commands command
Options/flags
The help command
The version command
Options/flags
The global-status command
Options/flags
Vagrant's configuration commands and sub-commands
The login command
Options/flags
The package command
Options/flags
The snapshot command
sub-commands
The provider command
Options/flags
The plugin command
sub-commands
The cap command
Options/flags
Day-to-day Vagrant commands and sub-commands
The box command
sub-commands
The destroy command
Options/flags
The halt command
Options/flags
The init command
Options/flags
The port command
Options/flags
The provision command
Options/flags
The push command
Options/flags
The reload command
Options/flags
The resume command
Options/flags
The status command
Options/flags
The suspend command
Options/flags
The up command
Options/flags
The validate command
Options/flags
Application-specific Vagrant commands and sub-commands
The docker-exec command
Options / flags
The docker-logs command
Options/flags
The docker-run command
Options/flags
The rdp command
Options/flags
The rsync command
Options/flags
The rsync-auto command
Options/flags
The ssh command
Options/flags
The ssh-config command
Options/flags
The powershell command
Options /flags
A typical Vagrant workflow using commands
Troubleshooting
Summary
Discovering Vagrant Boxes - Vagrant Cloud
Understanding Vagrant boxes
Vagrant box file anatomy
Box file
Box metadata
Box information
How to install a Vagrant box
Direct URL to box file
Shorthand/alias to box file
A file path or URL to a box in a specific catalog
How to delete a Vagrant box
Deleting a specific version of a box
Deleting all versions of a box
Box versioning
Vagrant Cloud
Understanding the Vagrant Cloud
Vagrant Cloud website
Installing a Vagrant box found on the Vagrant Cloud – Part 1, Search
Installing a Vagrant box found on the Vagrant Cloud – Part 2, Install
Uploading a Vagrant box to the Vagrant cloud
Creating a Vagrant box
Enterprise solutions for Vagrant boxes
Summary
Configuring Vagrant Using a Vagrantfile
Understanding Vagrantfiles
Creating a Vagrantfile
Vagrantfile syntax
Vagrantfile options
Vagrant machine configuration (config.vm)
Vagrant SSH configuration (config.ssh)
Vagrant settings (config.vagrant)
Other Vagrantfile settings
WinRM settings (config.winrm)
WinSSH settings (config.ssh and config.winssh)
Troubleshooting a Vagrantfile
Summary
Networking in Vagrant
Port-forwarding
Port-forwarding notes
Private networking
DHCP
Static IP
IPv6
Public networking
DHCP
Static IP
Network bridge
Summary
Multi-Machine
An introduction to Vagrant multi-machine
Load balancing with Vagrant multi-machine
lb.sh
web.sh
Vagrant multi-machine shell provisioning
multi-machine SSH
Web server and database setup with Vagrant multi-machine
web.sh
db.sh
Nginx and PHP configuration
MySQL configuration
Summary
Exploring Vagrant Plugins and Syncing Files
Understanding Vagrant plugins
The anatomy of a Vagrant plugin
Gem
bundler
Managing Vagrant plugins
Vagrant plugin installation methods
Installing a Vagrant plugin from a local file
Installing a Vagrant plugin from a known gem source
Vagrant plugin commands and subcommands
Finding, installing, and using a Vagrant plugin
Installing a Vagrant plugin
Uninstalling a Vagrant plugin
Vagrant file-syncing
Setting up synced folders
Synced folders with basic usage
Synced folders with RSync
Synced folders with NFS
Summary
Shell Scripts - Provisioning
Introduction to Vagrant provisioning
Understanding configuration management
Basic usage of Vagrant provisioning
Vagrant provisioning commands
Vagrant provisioning with a file
Single file
Directory
Vagrant Shell provisioner
Inline Scripts
External scripts
Script arguments
Script argument – string
Script argument – array
Summary
Ansible - Using Ansible to Provision a Vagrant Box
Understanding Ansible
Installing Ansible
Installing Ansible on macOS High Sierra (version 10.13)
Provisioning Vagrant using Ansible
Provisioning Vagrant using Ansible on the host machine
Provisioning Vagrant using Ansible on the guest machine
Additional Ansible options
Provisioner – Ansible
Provisioner – Ansible local
Ansible Playbooks
Summary
Chef - Using Chef to Provision a Vagrant Box
Understanding Chef
Chef Cookbook
Recipes
Templates
Attribute values
Extensions
File distributors
Chef Supermarket
Search
Provisioning Vagrant with Chef
Installing Chef on macOS
Using Chef Solo to provision a Vagrant machine
Using Chef Client to provision a Vagrant machine
Summary
Docker - Using Docker with Vagrant
Understanding Docker
Key components of Docker
Containers
Images
Registry
Service
Using the Docker Hub to find Docker images
Basic usage – running a container
pull
run
stop
start
search
Using Docker to provision a Vagrant machine
Docker-specific configuration in Vagrant
Images
build_image
args
pull_images
run
image
cmd
args
auto_assign_name
deamonize
restart
post_install_provisioner
Summary
Puppet - Using Puppet to Provision a Vagrant Box
Understanding Puppet
Resources
Manifest
Compile
Catalogs
Apply
Desired state
Puppet apply and Puppet agent
Puppet apply
Options
Puppet agent
Options
Puppet Manifest example and syntax
Syntax
Provisioning with Puppet
Provisioning with Puppet apply
Provisioning with Puppet agent
Summary
Salt - Using Salt to Provision a Vagrant Box
Understanding Salt
Salt Master
Salt Minion
Modules
Execution
State
Grains
Renderer
Returners
Runners
Salt states
Syntax and example
Provisioning Vagrant with Salt
Salt options available within Vagrant
Install options
Minion options
Master options
Execute states
Execute runners
Output control
Vagrant cheat sheet
Testing a Vagrantfile
Saving a snapshot
Status
Boxes
Hardware specification
Code deployment
Multi-machine
General
Summary
Other Book You May Enjoy
Leave a review - let other readers know what you think
← Prev
Back
Next →
← Prev
Back
Next →