Inicio > Miscs > Guía básica de Vagrant

Guía básica de Vagrant

jueves, 3 de abril de 2014 Dejar un comentario Ir a comentarios

Vagrant es una herramienta de código abierto cuyo objetivo principal es la creación y configuración de ambientes virtuales de desarrollo de manera rápida. La idea de esta guía es dar un pantallazo general al uso de Vagrant en el día a día.

Instalación de Virtualbox & Vagrant

Antes de empezar, necesitas:

– Tener instalado Virtualbox (https://www.virtualbox.org/)

– Tener instalado Vagrant (http://www.vagrantup.com/)

Para ello:

(verificar que la versión de Vagrant que descargamos con wget, sea la ultima estable)

sudo apt-get install dpkg-dev virtualbox-dkms virtualbox
wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.5.2_x86_64.deb
sudo dpkg -i vagrant_1.5.2_x86_64.deb

Agregar un box (templates) a nuestro repo local:

vagrant box add precise32 http://files.vagrantup.com/precise32.box
vagrant box add precise64 http://files.vagrantup.com/precise64.box

Ver que boxes (templates) tenemos descargados en nuestro repo local:

vagrant box list

Crear nuestro entorno de trabajo & inicializar nuestro vagrantfile:

mkdir -p $HOME/vm-prueba
cd $HOME/vm-prueba/
vagrant init

Editar el Vagrantfile

cd $HOME/vm-prueba/
vim Vagrantfile

Modificar donde dice config.vm.box = «base» por alguno de los box que descargamos antes, de modo que quede algo similar a:

config.vm.box = "precise32"

Iniciar nuestra VM:

cd $HOME/vm-prueba/
vagrant up

Conectar a la VM:

cd $HOME/vm-prueba/
vagrant ssh

Apagar nuestra VM:

cd $HOME/vm-prueba/
vagrant halt

Suspender nuestra VM:

cd $HOME/vm-prueba/
vagrant suspend

Reasumir nuestra VM:

cd $HOME/vm-prueba/
vagrant resume

Destruir nuestra VM:

(con todo, se pierde cualquier cambio que hayamos hecho en la VM!, al hacer nuevamente vagrant up, empezaremos desde el box base nuevamente)

cd $HOME/vm-prueba/
vagrant destroy

Carpeta compartida:

Por default, Vagrant al levantar una VM, monta en esta el directorio /vagrant del host (la maquina fisica donde estamos virtualizando).

Es decir, todo lo que en el host se encuentre dentro del directorio /vagrant, va a estar en la maquina virtual, dentro del mismo directorio /vagrant.

Ejecutar un script al iniciar la VM:

Editar el Vagrantfile y agregar una linea similar a esta:

config.vm.provision :shell, :path => "bootstrap.sh"

Luego, en el directorio de nuestra VM ($HOME/vm-prueba/) crear un archivo llamado bootstrap.sh y dentro de este, poner todos los comandos que queremos que se ejecuten al prender la VM..

Por ejemplo:

#!/usr/bin/env bash
apt-get update -y
apt-get install make -y
apt-get install build-essential -y
apt-get install openssl -y
apt-get install libssl-dev -y
apt-get install pkg-config -y
apt-get install screen -y
apt-get install rsync -y
apt-get install htop -y

Al reiniciar la VM, se ejecutarán automáticamente todos esos comandos.

Categories: Miscs Tags:
  1. Sin comentarios aún.
  1. Sin trackbacks aún.