This guide contains instructions on how to install and do basic configuration of Vagrant.
- Operating System: Ubuntu 18.04
- Access to a Terminal or Shell Console
- VirtualBox is installed for this guide. But not required if using Cloud Providers.
01: Open a terminal window
02: Make sure that VirtualBox is installed
$ vboxmanage --version
If not yet installed, you can download VirtualBox here first: https://www.virtualbox.org/wiki/Downloads
03: Update the package repository
$ sudo apt update
04: Install Vagrant from the package manager. Enter y when asked to confirm.
$ sudo apt install vagrant
05: Verify that Vagrant has been installed correctly
$ vagrant --version
Some are basic configuration when using Vagrant with VirtualBox
01: Create a new Vagrant box with an Ubuntu 18.04 OS. The setup will be:
- Host: Ubuntu 18.04
- Guest: Ubuntu 18.04 ← This is the Vagrant box we will be creating
02: Navigate or create the directory you want to create the box
$ cd ~ $ mkdir geek-ubuntu-1804 $ cd geek-ubuntu-1804
03: Initialize the configuration. This will create a Vagrantfile in the current directory.
$ vagrant init ubuntu/bionic64
04: Update the Vagrantfile to make the following changes
- Expose the Guest port 80 to the Host as port 8099
- Change the RAM to 2 GB
$ nano Vagrantfile
Set the content as follows and save the changes.
... Vagrant.configure("2") do |config| … config.vm.network "forwarded_port", guest: 80, host: 8099 … config.vm.provider "virtualbox" do |vb| … vb.memory = "2048" end
05: Provision the Vagrant box. This might take some time if you are creating a specific OS. But once it has been created, a cache of the OS image is saved locally.
$ vagrant up
06: Verify the status of the machine
$ vagrant status
07: Check the accessible/exposed ports to the Host.
$ vagrant port
08: Access the server using Vagrant SSH.
$ vagrant ssh
09: Exit from the SSH session
Vagrant commands must be executed in the directory where the box has been initialized (vagrant init)
|Destroying the box||
|Viewing the exposed ports||
|Halt or stop the machine. Equal to shutdown.||
|Suspends or pause the machine||
|Resumes the machine (when paused via suspend)||
|View the status||