I've been using a virtualized development environment for a over a decade, eliminating the "works on my machine" type of errors, speeding up the onboarding process for new team members and providing quick recovery when an environment gets "borked". Ubuntu 18.04 LTS, code named Bionic Beaver, is due out in April 2018 and I want to create a new envrionment based on it. Unlike the other times I've created the environment, I'll take the time to document the process, hopefully helping others to create their own boxes.
At the end of the process we will have a Vagrant box that provides us with a Xubuntu environment suitable for development in a variety of programming languages. We'll also provide a mechansim to apply some last-minute customizations that get applied the first time you launch a new box, allowing the box to be shared between collegues without having to install everyone's favorite tool. The tools I like to install include:
There are countless other tools I install but now you have an idea of what we'll be building together.Before we go any further, you'll need a few things:
- VirtualBox installed and working. Currently at version 5.2.8.
- Vagrant installed and working. Currently at version 2.0.2.
- Familiarity with Ubuntu Linux
- Familiarity with Ansible
- Packer installed and working. Currently at version 1.2.1.
- A GitHub account
- A Vagrant Cloud account
- An Ansible Galaxy account
Next time we'll begin putting the pieces together.