Creación de un entorno de desarrollo con Vagrant en Windows

En el vertiginoso mundo del desarrollo de software, la eficiencia reina supremamente. Ciclos rápidos de desarrollo, pruebas e implementación son cruciales para el éxito, pero manejar múltiples entornos y plataformas ralentiza incluso a los desarrolladores más competentes. Bueno, ¡no cuando tienes Vagrant en Windows para entornos de desarrollo consistentes!

Este tutorial te guiará paso a paso en la instalación y puesta en marcha de Vagrant en una máquina con Windows para tus necesidades de desarrollo.

¡Sigue leyendo para potenciar tu proceso de desarrollo con Vagrant!

Requisitos previos

Antes de crear un entorno de desarrollo, asegúrate de tener lo siguiente en su lugar para seguir este tutorial:

  • A Windows machine – This tutorial uses a Windows 10 system.
  • Software de virtualización, como VirtualBox, Hyper-V y productos de VMware (Workstation, Player, o Fusion) – Este tutorial utiliza VirtualBox (gratuito y recomendado para la mayoría de los usuarios).

Descargando el Paquete de Instalación de Vagrant

Vagrant permite a los desarrolladores como tú trabajar en entornos aislados y reproducibles independientemente de su sistema host subyacente. Pero, embarcarse en este viaje de crear un entorno de desarrollo virtual implica configurar Vagrant primero.

Para integrar sin problemas esta poderosa herramienta en tu configuración de Windows, realiza lo siguiente:

1. Abre tu navegador web preferido y visita la página de descarga oficial de Vagrant.

Accessing the Vagrant download page

2. Identifica la versión más reciente de Vagrant y selecciónala del menú desplegable de versiones; actualmente, la versión 2.4.1 es la última disponible.

Selecting the latest Vagrant version

3. Ahora, desplázate hacia abajo hasta la sección de Windows y haz clic en el enlace Descargar según la arquitectura de tu sistema para descargar el instalador (es decir, vagrant_2.4.1_windows_amd64).

A continuación, tienes dos opciones como sigue:

  • i686 – Para Windows, ejecutando una versión de 32 bits.
  • AMD64 – Para Windows, ejecutando una arquitectura de 64 bits.
Downloading Vagrant for Windows

4. Una vez descargado, abre PowerShell como administrador, navega hasta la ubicación del instalador de Vagrant (es decir, ~/Descargas), y ejecuta el siguiente código.

Este código verifica el checksum de tu instalador de Vagrant. Hacerlo garantiza la autenticidad del instalador de Vagrant y confirma que permanece sin alteraciones durante el proceso de descarga.

# Define el valor hash SHA256 esperado para el instalador de Vagrant
$expectedHash = 'fc3806e071b7af2067eec5e8dfbe9f2dfe2c46139c5d682bb7defd7a2f9083e9'

# Calcula el valor hash SHA256 real del archivo descargado
$fileHash = (Get-FileHash -Path .\\vagrant_2.4.1_windows_amd64.msi -Algorithm SHA256).Hash

# Compara el valor hash esperado con el valor hash real
if ($fileHash -eq $expectedHash) {
    # Si los valores hash coinciden, muestra un mensaje de validación
    Write-Host "The hash matches, the file is valid."
} else {
    # Si los valores hash no coinciden, muestra un mensaje de advertencia
    Write-Host "The hash does not match, the file may be corrupted or tampered with."
}
Verifying the downloaded Vagrant installer

? Si tu versión de Vagrant es diferente a 2.4.1, desplázate hacia abajo hasta la sección de Información de lanzamiento y haz clic en el hipervínculo proporcionado. Esta acción descargará un archivo .1_SHA256SUMS que contiene sumas de comprobación para varios sistemas operativos y arquitecturas correspondientes a tu versión de Vagrant

Downloading a .1_SHA256SUMS file containing checksums

Instalación de Vagrant en Windows

Has descargado y verificado tu instalador de Vagrant, pero sin una instalación adecuada, tus herramientas permanecen inactivas, incapaces de ayudar en tus proyectos.

Después de descargar y verificar tu instalador de Vagrant, el siguiente paso crucial es asegurarte de que tus herramientas puedan soportar tus proyectos: una instalación adecuada de Vagrant.

Para instalar Vagrant en tu sistema Windows, sigue estos pasos:

1. Haz doble clic en el instalador de Vagrant que descargaste para iniciar la instalación, iniciando el asistente de configuración de Vagrant.

2. A continuación, marca la casilla de verificación en la parte inferior y haz clic en Instalar para aceptar el acuerdo de licencia y continuar con la instalación.

Espera a que la instalación se complete sin interrumpir el proceso.

Installing Vagrant on Windows

3. Una vez que la instalación haya finalizado, haz clic en Finalizar para cerrar el asistente de configuración y reinicia tu sistema cuando se te solicite.

Finishing the installation

4. Por último, ejecuta el siguiente comando para verificar la instalación de Vagrant con --version.

vagrant --version
Verifying the Vagrant installation

Aprovechando Vagrant en Windows para Desarrollo

Con Vagrant instalado en tu sistema Windows, ahora estás listo para garantizar que el software se ejecute de manera consistente en todos los entornos, mejorando tu flujo de trabajo de desarrollo. Esta consistencia es uno de los mayores desafíos en el desarrollo de software.

Afortunadamente, Vagrant permite a los desarrolladores crear un entorno de desarrollo que se asemeja estrechamente al entorno de producción. Con Vagrant, puedes crear un entorno de desarrollo basado en Linux que elimina el problema de “funciona en mi máquina”.

Para configurar un entorno de desarrollo básico usando Vagrant, sigue estos pasos:

1. Ejecuta los siguientes comandos en PowerShell para crear (mkdir) y navegar (cd) a un nuevo directorio de proyecto llamado vagrant_windows (arbitrario).

mkdir ~/vagrant_windows
cd vagrant_windows
Creating a project directory

2. A continuación, ejecuta el comando vagrant a continuación para iniciar (init) un nuevo entorno de Vagrant, que generará un Vagrantfile en el directorio de tu proyecto.

Este Vagrantfile es crucial para la configuración del entorno. ¿Cómo? Cuando nuevos miembros del equipo se unen a un proyecto, a menudo pasan tiempo significativo configurando su entorno de desarrollo. Vagrant simplifica este proceso.

Con un Vagrantfile preconfigurado, un nuevo desarrollador puede poner en marcha su entorno de desarrollo con unos pocos comandos. Esta capacidad se aplica independientemente de si utilizan Windows, macOS o una distribución de Linux.

vagrant init
Initiating a new Vagrant environment

3. Abre el Vagrantfile con tu editor de texto preferido, inserta la siguiente configuración, y guarda y cierra el archivo. Esta configuración establece una máquina virtual (VM) Ubuntu 20.04 LTS (Focal Fossa) e instala NGINX.

Vagrant utiliza el Vagrantfile, un archivo de configuración declarativo, para definir el tipo de máquina requerido para un proyecto. Además, Vagrant puede descargar automáticamente la caja necesaria (un formato de paquete para entornos de Vagrant) para comenzar.

Vagrant.configure("2") do |config|
  # Utiliza Ubuntu 20.04 LTS (Focal Fossa) como caja base
  config.vm.box = "ubuntu/focal64"
  
  # Actualiza automáticamente la lista de paquetes, actualiza los paquetes e instala NGINX
  config.vm.provision "shell", inline: <<-SHELL
    echo "Updating package lists..."
    sudo apt-get update
    echo "Installing Nginx..."
    sudo apt-get install -y nginx
    echo "Ensuring Nginx is started..."
    sudo systemctl start nginx
  SHELL
end

4. Ahora, ejecuta el siguiente comando vagrant up para arrancar la VM.

Vagrant descarga la caja de Ubuntu (si aún no está descargada) y pone en marcha una máquina virtual basada en esa caja.

vagrant up

5. Después de la configuración, ejecuta el siguiente comando vagrant para acceder a la línea de comandos de tu máquina virtual a través de SSH.

vagrant ssh
Connecting to the VM

6. Por último, ejecuta el comando systemctl siguiente para comprobar el estado del servicio NGINX.

sudo systemctl status nginx

Si todo funciona como se espera, verás una salida que indica que NGINX está activo y en ejecución, como se muestra a continuación.

¡Felicidades! Ahora tienes un servidor Ubuntu Linux virtualizado en tu máquina Windows, optimizado para fines de desarrollo con Vagrant.

Verifying NGINX has been correctly installed

Conclusión

A lo largo de este tutorial, has instalado Vagrant en Windows y creado un entorno de desarrollo reproducible para mejorar significativamente tu flujo de trabajo de desarrollo.

Ya sea que estés trabajando de forma independiente o colaborativa, Vagrant proporciona la infraestructura para garantizar que tus proyectos se desarrollen de manera controlada y consistente. Esta infraestructura conduce a resultados más predecibles y confiables.

Ahora, adéntrate en las características avanzadas de Vagrant, ¡como crear cajas personalizadas para las necesidades específicas de tu proyecto! ¿O aprovechar provisionadores para automatizar la instalación y configuración de software? ¿E integrarse con otras herramientas como Docker para un entorno de desarrollo más robusto?

Al abstraer las complejidades del software de virtualización, Vagrant te permite iniciar un entorno de desarrollo consistente y portátil con unos pocos comandos. ¡Comienza a aprovechar todo el potencial de Vagrant hoy mismo!

Source:
https://adamtheautomator.com/vagrant-on-windows/