For any modern development team, it is always a good idea to use a unified code running environment throughout a project. In a unified code running environment, team members can use different coding tools on different operating systems, but all the code they yield is validated in the same environment. Thus, those working-on-my-machine bugs can be avoided before they get into the production environment.
Vagrant is a great tool for building and maintaining unified code running environments mentioned above. With the help of Vagrant, a project organizer can easily setup a unified code running environment for every team member, even a new comer can dive into the same environment quickly.
In this article, we will be covering the process of installing Vagrant on CentOS 6 x64 along with its basic usages.
Prerequisites
- Deploy a new Vultr CentOS 6 x64 server instance
- A sudo user.
- VirtualBox installed on the instance.
Step 1: Add the current user into the “vboxusers” group
By default, the VirtualBox software will create a user group named vboxusers
, you need to add the account you are using to this group before you can invoke the VirtualBox program properly. Remember to replace vagrantuser
with your own username:
sudo usermod -G vboxusers vagrantuser
sudo shutdown -r now
Log in from your terminal again after the system reboot.
Step 2: Install the latest version of Vagrant
You can and should always find the latest version of Vagrant from its official website:
cd ~
wget https://releases.hashicorp.com/vagrant/1.8.1/vagrant_1.8.1_x86_64.rpm
sudo yum install vagrant_1.8.1_x86_64.rpm
After the installation has been completed, use the below command to confirm vagrant is installed:
vagrant --version
Step 3: Create a directory for your project:
You can create a directory projectx
under your home directory to contain your project environment:
cd ~
mkdir projectx
cd projectx
Step 4: Initiate your project environment with a Vagrant box:
A Vagrant box is a package containing a predefined code running environment. You can use a Vagrant box on any platform that Vagrant supports to reproduce the identical environment.
You can use a Vagrant-owner-issued or a third-party box as the base of your environment.
For example, if you want to setup your project environment based on Ubuntu 12.04 LTS 32-bit, you can use a Vagrant-owner-issued box, hashicorp/precise32, to initiate your project environment:
vagrant init hashicorp/precise32
You can find more Vagrant-owner-issued boxes from vagrantcloud.com.
If you want to utilize a third-party Vagrant box, you need to add it to your box repo before you can use it:
vagrant box add centos66 https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.0.0/centos-6.6-x86_64.box
vagrant init centos66
Here, “centos66” is a user-defined name, the URL is the path to the box.
You can find more third-party Vagrant boxes from vagrantbox.es.
The “vagrant init” command will create a file “Vagrantfile” in the project directory.You can use it to adjust configurations of your project later.
Step 5: Bring up your Vagrant virtual machine
Technically, a code running environment is a virtual machine provided by VirtualBox, you need to bring it up before you can log into it:
vagrant up
Step 6: Log in and log out your Vagrant virtual machine
You need to log into your Vagrant virtual machine to use or customize it:
vagrant ssh
With the command above, you log into your Vagrant virtual machine using the default username “vagrant” and a predefined private key.
In the virtual machine, You can customize your code running environment as you wish.
In order to exit the virtual machine, press Ctrl-D or input exit
.
Step 7: Suspend or Stop your Vagrant virtual machine
If you want to suspend your Vagrant virtual machine:
vagrant suspend
If you want to stop your Vagrant virtual machine:
vagrant halt
Step 8: Create a new box
You can package your code running environment and export it to a Vagrant box file with the following command:
vagrant package
The exported Vagrant box file “package.box” will reside in your project directory. All of your team members should use it to build their own code running environments.
Step 9: Destroy the Vagrant virtual machine
You can destroy the Vagrant virtual machine with the following command:
vagrant destroy
This command will only destroy the virtual machine related to current project directory. None of your box files will be removed.
Know more about Vagrant
For help on Vagrant, input the following command:
vagrant --help
This concludes our tutorial. Thank you for reading.
Want to contribute?
You could earn up to $300 by adding new articles
Suggest an update
Request an article