Ubunlog Damian Amoedo  

Vagrant, crea y configura entornos de desarrollo virtualizados

about vagrant

En el siguiente artículo vamos a echar un vistazo a Vagrant. Esta es una herramienta de línea de comandos para la creación y configuración de entornos de desarrollo virtualizados. Nos va a permitir definir los servicios a instalar así como también sus configuraciones. Esta herramienta está pensada para trabajar en entornos locales y lo podemos utilizar con shell scripts, Chef, Puppet o Ansible.

De forma predeterminada, Vagrant puede aprovisionar máquinas sobre VirtualBox, Hyper-V y Docker. Aun que también se pueden instalar otros proveedores como Libvirt (KVM), VMware y AWS a través del sistema de complementos.

Como mencioné más arriba, Vagrant sirve para ayudarnos a crear y configurar máquinas virtuales con determinadas características y componentes. La gran ventaja de este software es que posee un archivo de configuración llamado Vagrantfile donde se centraliza toda la configuración de la VM que queramos crear. Podremos utilizar el Vagrantfile para crear una VM exactamente igual cuantas veces queramos. Además es super liviano, por lo que podremos agregarlo a nuestro repo o enviar por mail a los compañeros de trabajo.

Vagrant generalmente es utilizado por los desarrolladores para configurar un entorno de desarrollo que funcione en múltiples sistemas operativos. Puede funcionar en Gnu/Linux, Mac o Windows. Los entornos de desarrollo remotos obligan a los usuarios a renunciar a sus editores y programas favoritos. Vagrant funciona en el sistema local con las herramientas con las que ya estemos familiarizados.

En las siguientes líneas vamos a ver cómo instalar Vagrant en una máquina Ubuntu 20.04. Para ello vamos a utilizar VirtualBox, que es el proveedor predeterminado.

Instalar Vagrant en Ubuntu

El primer paso como es habitual, será descargar e instalar la herramienta, pero en este caso además tendremos que instalar el proveedor de máquinas virtuales que queramos utilizar. Este por defecto será VirtualBox, ya que es gratuito y viene integrado en Vagrant.

Si VirtualBox no está instalado en tu sistema, se puede instalar abriendo una terminal (Ctrl+Alt+T) y ejecutando los comandos:

sudo apt update; sudo apt install virtualbox

Mientras escribo estas líneas, la última versión estable de Vagrant es la 2.2.9. Para su descargar, los usuarios podemos visitar la página de descargas o ver si hay una nueva versión de disponible. También podremos ejecutar wget desde la terminal (Ctrl+Alt+T) para descargar el paquete .deb necesario:

descargar el archivo .deb de vagrant

wget https://releases.hashicorp.com/vagrant/2.2.9/vagrant_2.2.9_x86_64.deb

Una vez completada la descarga, ya podemos instalar el paquete escribiendo en la terminal:

instalación de vagrant

sudo apt install ./vagrant_2.2.9_x86_64.deb

Cuando finalice la instalación, podremos verificar que todo ha sido correcto ejecutando el siguiente comando, que imprimirá la versión instalada:

vagrant version

vagrant --version

Comenzando

Crear un proyecto Vagrant es tan simple como configurar el directorio raíz del proyecto y definir un archivo Vagrant.

Para empezar, no habrá más que ejecutar los siguientes comandos para crear el directorio y después acceder:

crear directorio para el proyecto de ejemplo

mkdir ~/mi-proyecto-vagrant

cd ~/mi-proyecto-vagrant

Ahora vamos a crear un nuevo Vagrantfile usando el comando vagrant init, seguido de la caja que nos interese utilizar.

Las cajas son el formato del paquete para los entornos Vagrant, y son específicas del proveedor. Se pueden encontrar una lista de Cajas Vagrant disponibles públicamente en la página del catálogo de Cajas.

En este ejemplo, utilizaré la caja debian/stretch64:

comando init

vagrant init debian/stretch64

Vagrantfile es un archivo Ruby que describe cómo configurar y aprovisionar la máquina virtual. Los usuarios podemos abrir el Vagrantfile, leer los comentarios y hacer ajustes de acuerdo a las necesidades de cada uno.

Ahora ejecutaremos el comando vagrant up para crear y configurar la máquina virtual:

vagrant up

vagrant up

Vagrant monta el directorio del proyecto en /vagrant en la máquina virtual. Esto nos permitirá trabajar en los archivos de nuestro proyecto en nuestra máquina host.

Para acceder a la máquina virtual, ejecutaremos:

conexión con ssh

vagrant ssh

Una vez en ella, podremos realizar los cambios que nos interese:

información del sistema vagrant

Podremos detener la máquina virtual cuando queramos con el siguiente comando:

vagrant halt

Para destruir todos los recursos creados durante la creación de la máquina, el comando a utilizará será:

comando destroy

vagrant destroy

Y en líneas generales con esto, hemos visto cómo instalar Vagrant en Ubuntu 20.04 y crear un proyecto básico. Los usuarios que lo necesiten, pueden obtener más información sobre la instalación y uso de esta herramienta visitando la página oficial, en dónde se puede encontrar la documentación oficial.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.