Creating a Vagrant Virtual Development Environment
Vagrant is open-source software used to create lightweight and portable virtual development environments. Vagrant works like a "wrapper" for VirtualBox that can create, configure, and destroy virtual machines with the use of its own terminal commands. Vagrant facilitates the setup of environments without any direct interaction with VirtualBox and allows developers to use preferred editors and browsers in their native operating system. This blog describes a typical workflow using Vagrant in a development environment.
New to Github? Learn more about basic Github activities here.
Note: This document is for setting up a virtual environment on a Unix host. If you are using a Windows host, please use these instructions.
- Download and install VirtualBox 4.3.12
- Do not open VirtualBox or create a virtual machine. This will be handled by Vagrant.
- Download and install Vagrant 1.6.3
- Package managers like apt-get and gem install will install an older version of Vagrant so it is required to use the download page.
Clone your forks of the
xtuple-extensions repositories to a directory on your host machine:
host $ mkdir dev host $ cd dev host $ git clone --recursive https://github.com/<your-github-username-here>/xtuple.git host $ git clone --recursive https://github.com/<your-github-username-here>/xtuple-extensions.git
Clone your fork of the
xtuple-vagrant repository in a separate directory adjacent to your development folder:
host $ cd .. host $ mkdir vagrant host $ cd vagrant host $ git clone https://github.com/<your-github-username-here>/xtuple-vagrant.git host $ cd xtuple-vagrant
- In the
Vagrantfile, ensure that the
sourceDirvariable to matches the location of the cloned xTuple source code:
sourceDir = "../../dev"
- This path should be relative to the location of the Vagrantfile
Install VirtualBox Guest Additions Plugin
host $ vagrant plugin install vagrant-vbguest
Connect to the Virtual Machine
Start the virtual machine:
host $ vagrant up
- Vagrant will automatically run a shell script to install git and the xTuple development environment
Connect to the virtual machine via ssh:
host $ vagrant ssh
- The xTuple source code is synced to the folder
Start the datasource:
vagrant $ cd dev/xtuple/node-datasource vagrant $ node main.js
xTuple Mobile Web
Launch your local browser and navigate to application using localhost
http://localhost:8888 or the static IP Address of the virtual machine
Default username and password to your local application are
xTuple Desktop Client
Obtain the xTuple Desktop Client Installer for your platform. To be sure the PostBooks Desktop Client version matches the PostBooks database version you are installing, look at the "About" information in the Mobile client.
Run the installer. On the screen where you select an xTuple database, select "I do not need a Free Trial database."
- Complete the installation and launch the Desktop Client. On the login screen, enter these credentials to connect to your local xTuple server:
- Server :
Shutting down, restarting, and destroying your VM: