Converting virtual-box appliances into vagrant box

It is possible to convert virtual box appliances to vagrant box without much of a hassle. To do so, first you have to import the appliance into your virtual box.

Once imported you can see the VM ID from the virtual media manager.You have to type in the following command in terminal to see the list of virtual boxes and their VM IDs.


vboxmanage list vms

Once you have the VM ID type in the following commands in terminal to export it as a box using vagrant. For example if the VM ID is “acef4c0a-35be-4640-a214-be135417f04d” then the command will be as follows –


vagrant package --base acef4c0a-35be-4640-a214-be135417f04d --output newbox.box

Once the box file is generated you can import in vagrant using the following command –


vagrant box add newbox.box --name newbox

Now in your vagrantfile you can use this “newbox” as the box to be used.


Vagrant.configure("2") do |config|
  config.vm.box = "newbox"
  # ...
end

Reference: https://github.com/crohr/ebarnouflant/issues/7

Advertisements

Installing odoo 9 on vagrant

Step 1 : Place the vagrant file in a folder where you want to create the virtual instance.

Download Vagrant File

Step 2 : Start up vagrant instance.

vagrant up

Step 3 : SSH into the box.

vagrant ssh

Step 4 : Update the system.

sudo apt-get update

Step 5 : Add odoo key

wget -O - https://nightly.odoo.com/odoo.key | sudo apt-key add -

Step 6 : Add odoo distribution file location on source file


# add "deb http://nightly.odoo.com/9.0/nightly/deb/ ./" at the end of the source.list file and save
sudo nano /etc/apt/sources.list

Step 7 : Install odoo.

sudo apt-get install odoo

Step 8 : Login as postgres user.

sudo su - postgres

Step 9 : Create new postgres user. Give `odoo123` as password. (You can given any password as long as you update it on the openerp-server.conf accordingly.)

createuser odoo -U postgres -dRSP

Step 10 :  Create new database.

createdb odoodb

Step 11: Run the postgres console.

psql

Step 12 : Grant permission to odoo user for odoodb database.

GRANT ALL PREVELEGES ON DATABASE odoodb TO odoo;

Step 11 : Update openerp-server.conf located at /etc/odoo/openerp-server.conf.

db_host = localhost
db_port = 5432
db_user = odoo
db_password = odoo123

Step 12 : Restart odoo server.

sudo service odoo restart

Now you should open the browser and type in http://localhost:8069/ and should see the odoo default installation screen.