Categorías
Técnico

Máquinas virtuales Vagrant y VirtualBox

Máquinas virtuales Vagrant - Development Environments made easyCuantas veces hemos tenido que reinstalar nuestra máquina ya sea Windows, Linux o Mac –porque no nos engañemos todos la reinstalamos, aunque algunos menos veces que otros– y te entra ese sentimiento de pánico, porque conoces todo el trabajo que tienes por delante para dejarlo a tu gusto, con todas las herramientas que utilizabas, configuraciones, etc.

Y si desarrollas para la web, el servidor apache, mysql, php, extensiones, complementos, plugins … un dolor de cabeza.

Para estos desarrolladores que nos tenemos que pelear día sí, día también con nuestros servidores de desarrollo, testing, y producción, existe una herramienta, que si bien no elimina todos los males, los puede minimizar en gran medida, estas son las máquinas virtuales Vagrant.

Muchos estarán temblando al leer máquinas virtuales porque son de esas cosas que cuando van bien son muy útiles, pero cuando no, son un verdadero coñazo dolor de cabeza.

Pues bien, Vagrant lo que nos permite es crear una máquina virtual, pero a partir de unos archivos de configuración, la deja preparada y funcionando con todos los servicios que necesitamos para nuestro trabajo, incluso puede ser un entorno lo más parecido posible al servidor de producción dónde irá alojada nuestra aplicación web.

Las aplicaciones que necesitamos para poder arrancar una máquina Vagrant son:

  • Instalar VirtualBox y las extensiones (también se pueden gestionar con Vmware, pero para eso necesitaremos comprar la licencia)
  • Instalar Vagrant

Con estas dos aplicaciones ya podemos arrancar nuestra primera máquina. Para comenzar necesitaremos una box. Una box es una imagen de máquina virtual empaquetada para ser utilizada en Vagrant.
Boxes podemos encontrar practicamente cualquier distribución linux, incluso algun Windows 2008 como se puede ver en Vabrantbox.es.

Si es nuestra primera prueba con Vagrant podemos descargarnos una Ubuntu 12.04 LTS en su versión de 32 o 64 bits.

Para descargar una box, abrimos una Terminal y ejecutamos:

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

Este proceso tardará un poco ya que tiene que descargarse la imagen de unos 400Mb

El siguiente paso es configurar una carpeta donde se alojará nuestra configuración de máquina virtual, podemos crear una carpeta en nuestra Home de usuario que se llame Vagrant.
Desde la terminal entramos en la carpeta que acabamos de crear y ejecutamos:

vagrant init precise64

“precise64” es el nombre de la box que hemos descargado. Con esto se ha creado un archivo Vagrantfile donde se establece la configuración que tendrá la máquina virtual. Podemos abrir este archivo de texto y revisar qué configuraciones tiene, está todo muy comentado.

Una vez configurada nuestra carpeta para Vagrant, todos los comandos los debemos ejecutar desde esta misma carpeta.

Podemos arrancar la máquina virtual con el comando:

vagrant up

Máquina virtual Vagrant execution on iterm2

Si todo va bien, tendremos nuestra máquina Vagrant corriendo. Podemos conectarnos por terminal, con el comando:

vagrant ssh

Y para detener la máquina Vagrant:

vagrant halt

Si en algún momento queremos eliminar esta máquina, y empezar de nuevo la podemos destruir con el comando:

vagrant destroy

Y ya podemos empezar la máquina “limpia” nuevamente.

Otros comandos vagrant útiles:

Listado de las boxes que tenemos descargadas en nuestro sistema:

vagrant box list    

Suspender la máquina Vagrant

vagrant suspend

Recargar la máquina virtual, por si hemos hecho algún cambio en la configuración:

vagrant reload

Ver el estado de la máquina virtual

vagrant status

Hasta aquí tenemos una máquina virtual corriendo en nuestro sistema, pero no tiene ningún servicio activo, así que por ahora no es muy útil esta máquina para trabajar.
En el próximo post explicaré como hacer un archivo de configuración que instale todos los servicios para desarrollo web.

2 respuestas a “Máquinas virtuales Vagrant y VirtualBox”

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s