De Vagrant para el mundo — Pero en mi maquina si funciona.

abrahamjso
Architect IO
Published in
4 min readNov 13, 2014

--

Son las 3:36 am y al fin tecleé mi última línea de código. Llevo 4 días trabajando arduamente en mi tarea, tanto tiempo dedicado, es hora de dormir.

10:25am
-Abraham, tu código no me compila, muestra errores, tendrás 2 puntos por el intento.
-Pero… pero…, en mi maquina si funciona se lo puedo demostrar.
-Ni peros, otra vez le metiste librerías raras que solo en OS X funcionan.
-Ta mad…

Problema

Cuantas veces no nos hemos tocado en la misma situación o en alguna similar, donde tenemos que demostrar nuestro trabajo en otro computador y éste o no funciona o muestra miles de errores de librerías o configuraciones, y aquí es donde llega ese sentimiento, que estamos seguros que en nuestra maquina si lo hace.

Hoy en día tenemos la oportunidad de tener muchas distribuciones y usar la que mejor se nos adecue o nos agrade, tanto en nuestras maquinas personales, del trabajo o en servidores. En ocasiones este es un problema, ya que en el momento de la verdad, tenemos que correrlo en diferentes ambientes, generándonos un dolor de cabeza.

Solución

La respuesta a esto muchas veces, es el tener un mismo entorno de desarrollo. Pero un mismo entorno es una palabra que no a todos nos gusta y aparte estoy muy agradable con mi distribución y no me parece hacer alguna partición o instalar un OS.

Vagrant

Vagrant es una maquina virtual que actualmente esta teniendo mucho reconocimiento (hay otras alternativas como VMware, VirtualBox, entre otras, pero nos enfocaremos en vagrant), ¿Porque? la respuesta, es la solución de lo antes mencionado y la ventaja que es liviano (No tiene interfaz, por lo que nuestro medio de interacción será por terminal).

Con ella, puedes levantar cualquier entorno que tenga disponible (Ubuntu, Debian, Fedora, CoreOS, CentOS, entre otros).

http://scottbasgaard.com/wordcamp/wcdk/2014/images/vagrant.jpg

Instalación

Para poder instalar vagrant basta con ir a la página y descargar el instalador de nuestro Sistema Operativo.

Una vez hecho esto abrimos nuestra terminal y crearemos un directorio de prueba y lo inicializamos.

mkdir pruebaVagrant
cd pruebaVagrant

BOX

El box es un contenedor de imágenes donde tendremos alojado, que nos ayudará para levantar nuestra distribución seleccionada, para ello tecleamos el siguiente comando:

vagrant box add my_centos_stable https://dl.dropbox.com/s/3fgr7lbvcpn51py/centos_6-5_i386.box

Lo que estamos diciendo es que crearemos un contenedor llamado my_centos, donde tendremos descargada nuestra imagen. El siguiente comando, nos ayudará para mostrar una lista de nuestros contenedores:

➜ pruebaVagrant vagrant box list
coreos-alpha (virtualbox, 494.0.0)
my_centos (virtualbox, 0)
precise64 (virtualbox, 0)
ubuntu/trusty64 (virtualbox, 14.04)

Levantando ambiente

Una vez creando lo anterior, seguiremos por levantar un ambiente. Se puede hacer en diferentes formas, mi favorita es la siguiente:

vagrant init my_centos

En este comando indicamos que utilizaremos el entorno de my_centos, creándonos un Vagrantfile, el cuál contiene la configuración del entorno a levantarse. Una vez tenido nuestro archivo, tecleamos lo siguiente:

vagrant up
vagrant ssh

El primer comando levanta el ambiente ya seleccionado, por lo tanto configurará unas cosas y el segundo realiza una conexión ssh a nuestra maquina virtual.

➜ pruebaVagrant vagrant ssh
Last login: Wed Apr 23 16:20:05 2014 from 10.0.2.2
Welcome to your Vagrant-built virtual machine.
[vagrant@localhost ~]$

VM

Si en nuestra terminal nos regresa un comando como el anterior, en hora buena, ya tenemos nuestro entorno.

CentOS directorio

¿Y ahora?

Ya que estamos dentro de nuestro ambiente, tenemos que familiarizarnos un poco más con la terminal, ya que como antes mencionado, será nuestro enlace en la VM, a partir de la terminal configuraremos e instalaremos las librerías, programas o frameworks que usaremos o que quisiéramos usar.

Notas

Para salir de nuestra maquina virtual basta con teclear:

exit

¿Que pasa una vez que salgo?

En esta parte hay que tener cuidado, porque una vez que salimos de nuestro entorno, la maquina virtual seguirá corriendo por lo tanto estará consumiendo memoria RAM. Por lo tanto hay que suspenderla o apagarla.
Aún así no te preocupes te darás cuenta que tienes prendidas tus máquinas virtuales cuando notes muy lento tu ordenador (believe me).

Lista de comandos:

vagrant suspend    #Suspende la VM
vagrant resume #Inicia la VM que fue suspendida
vagrant halt #Apaga la VM
vagrant status #Nos indica el estado actual de nuestra VM
vagrant destroy #Elimina la VM

Referencias

https://www.vagrantup.com/
http://www.vagrantbox.es/

--

--

abrahamjso
Architect IO

Techie, Software Developer, Entrepreneur, Pizza, Taco Burrito, Gorditas, Tostadas, Frijoles… Lover!