
An introduction to the basics of this course, including the target audience, understanding Vagrant, learning core concepts, installing software, and the main quick start portion.
A quick overview of the approach taken in this course, where most videos are step-by-step examples supplemented by slides and illustrations for theory. The command line will also be a focus, and students should have a basic understanding of how a terminal works before starting this course.
A quick explanation of what Vagrant is, which is an automation tool that helps keep virtual machines organized, sets up networking between the host and virtual computer, and a variety of other tasks done by Vagrant scripts.
A guide to what the streamlined approach of the next two platform specific installation lectures will cover and how.
A quick guide to the tools we need to install on Windows for this course, including Git for Windows, Notepad++, VirtualBox, and Vagrant.
A quick guide to the tools we need to install on Mac for this course, including Git from Apple, TextMate 2, VirtualBox, and Vagrant.
An overview of the topics we will cover in this section, including working with Vagrant, starting and stopping Vagrant, and using Git with Vagrant.
Reading information from the Vagrant website in order to get a better sense of what types of things we will do in this course.
Initializing our Git repository on our local system that we will use with Vagrant for the rest of this course.
Initializing our Vagrant project with Ubuntu using Precise 64 from Hashicorp.
Running our basic Vagrant configuration in order to set up our initial virtual machine and reviewing the contents of the output command to see what Vagrant is actually doing when we use it to set this up.
Accessing our newly created Ubuntu virtual machine through SSH on the command line.
Stopping, halting, and starting our Vagrant machine with the respective vagrant commands. Halting will pause the setup, stopping will fully free up resources, and starting will boot the machine back up the way we had it.
Using the "vagrant up" command to Relaunch our virtual machine, then the "vagrant reload" command to show what to do if you need to restart your vagrant based virtual machine.
Cleaning up by adding changes to our Git repository and ignoring files we don't wish to version with our ".gitignore".
An overview of the topics covered in this section, including other Vagrant boxes, setting up and customizing Vagrant Boxes, and saving and copying Vagrant boxes.
Using the website "vagrantbox.es" to find some vagrant boxes that have been pre-screened to be useful, then adding one based on CentOS 7.
Initializing out CentOS 7 Vagrant Box, showing it off, and then destroying it to clean up what we don't need.
Creating a new Vagrant Box based on Ubuntu Trusty64 from the Hashicorp website.
Returning to our quick start project to update the Vagrant Box loaded to be the Ubuntu one that we just located on Hashicorp.
Updating programs within our Vagrant Box, as well as installing new programs from the Ubuntu apt-get service.
Saving the changes we made updating the operating system to a new custom vagrant box using the package command.
Updating the quick start project to use the Package we just created instead of starting from scratch every time we restart Vagrant.
An overview of what we will cover in this section, including provisioning a Tomcat 8 server using Bash shell scripting.
Reverting our project back to the base Trusty64 package and reloading it, as well as updating our .gitignore.
Updating our base Trusty64 Vagrant Box on our local system to the most up to date version.
Using a bash shell script to create a provisioning script to update programs on our Vagrant Box and install several programs, and linking that provisioning script to run when we start up our Vagrant Box. As well, we can run the provisioning script on an active system.
Updating our provisioning script to install and properly configure Tomcat with the defaults onto our local install of the Ubuntu server.
Saving all of our changes within Git and then publishing them onto GitHub.
A review of what has been covered within this course, including what Vagrant is good for, the development systems it can be used for, and a reassessment that this is a beginner course that can be followed up with more complex courses.
A guide to the programs that will be installed in this section, including Git for windows, Notepad++, VirtualBox, and Vagrant.
Installing the versioning software Git for Windows onto our local Windows System.
Getting help on commands we are going to be using in this course by using the "git help" command to detail how to use things.
Setting up the minimal configuration needed by Git to get our Git for Windows setup working.
Installing the text editor Notepad++ onto our local Windows system.
Integrating our text editor Notepad++ with our install of Git for Windows.
Installing the virtual machine software VirtualBox from Oracle onto our local Windows system.
Installing the portable virtual box imaging system Vagrant onto our local Windows system.
A guide to the programs that will be installed in this section, including Git from Apple, TextMate 2, Git Prompt, VirtualBox, and Vagrant.
Updating the security within our Mac system in order to allow installing software not from the Apple App store.
Setting up our Mac OS X terminal to work best for this course.
Installing the versioning software, Git, on our local system using the command line utility provided by Apple.
Getting help on commands we are going to be using in this course by using the "git help" command to detail how to use things.
Setting up the minimal configuration needed by Git to get our Git setup working.
Installing the text editor TextMate 2 on our local Mac OS system.
Configuring TextMate 2 to be more usable throughout the rest of this course.
Configuring TextMate 2 to integrate closely with our installation of Git.
Updating our terminal prompt to be more usable throughout this section by using a script.
Installing the virtual machine software VirtualBox from Oracle onto our local Mac OS system.
Installing the extension pack in order to give us more functionality within our Virtual Boxes.
Installing the portable virtual box imaging system Vagrant onto our local Mac OS system.
This is an introductory course on Vagrant designed to show how to setup local development environments using Vagrant and related tools.
Course Outline
Introduction provides an overview for the course, cover the core concepts for Vagrant, how to get the course materials.
Quick Installation provides streamlined, fast instructions on how to setup Vagrant, VirtualBox, and other tools needed for the rest of the course on both Windows and Mac platforms. See the Bonus section for full installation processes.
Quick Start walks through the basics of using Vagrant and how to version control (using Git) a project using Vagrant.
Boxes covers how to find, manage and use Vagrant boxes.
Provisioning covers how to write shell provisioners to automatically install software when Vagrant first runs or on demand. Students write a real shell script to provision Tomcat in their Vagrant managed virtual machines.
Conclusion has some final thoughts on Vagrant.
Bonus! sections provide comprehensive, step-by-step installation processes for both Windows and Mac OS X.
Course Features
Presentations provide audio/video training of conceptual ideas in each major area or introduction of new concepts.
Screencasts provide a video of the instructor's computer system with any actions, commands, or screens displayed and narrated. There are several hours of screencat video content -- it makes up the vast majority of the course.
Several attachments throughout the course provide supplemental information, illustrations, or other reference material.