Quick Start with Vagrant
Vagrant HOST Steps
The following steps are preformed on the host that runs Vagrant.
Installing Vagrant and Downloading Armbian
First, you'll need to install vargrant on your host box. Next, you'll need to install a plug-in that will enable us to resize the primary storage device. Without it, the default Vagrant images are too small to build Armbian.
vagrant plugin install vagrant-disksize
Now we'll need to install git and check out the Armbian code. While this might seem obvious, we rely on it being there when we use Vagrant to bring up our guest-build box.
# Check out the code. git clone --depth 1 https://github.com/igorpecovnik/lib.git lib # Make the Vagrant box available. This might take a while but only needs to be done once. vagrant box add ubuntu/xenial64 # If the box gets updated by the folks at HashiCorp, we'll want to update our copy too. # This only needs done once and a while. vagrant box update
Armbian Directory Structure
Before we bring up the box, take note of the directory structure used by the Armbian build tool. When you read the lib/Vagrant file you'll see that Vagrant automatically creates a directory for output. This is helpful as it enables you to easily get your images once built. It also speeds-up the build process by caching files used during the build. In addition, Vagrant creates the userscripts directory. This is where you'd put any files used to customize the build process.
Creating the Vagrant Guest Box Used to Build
Let's bring the box up. This might take a minute or two depending on your bandwidth and hardware.
# We have to be in the same directory as the Vagrant file. cd lib # And now we simply let vagrant create out box and bring it up. vagrant up # When the box has been installed we can get access via ssh. # (No need for passwords, Vagrant installs the keys we'll need.) vagrant ssh
Vagrant GUEST Steps
The following steps are all run on the guest Vagrant created for us.
Once it's finally up and you're logged in, it works much like any of the other install methods (NOTE: again, these commands are run on the guest box).
# Copy the compile script out of the lib directory. cp lib/compile.sh . # Let's get buidling! sudo ./compile.sh
More Vagrant HOST Steps
Wrap up your vagrant box when no longer needed (log out of the guest before running these on the host system):
# Shutdown, but leave the box around for more building at a later time: vagrant halt # Trash the box and remove all the related storage devices. vagrant destroy