En resumen, #Vagrant simplifica la creación y gestión de entornos de desarrollo virtuales, permitiendo a los equipos de desarrollo trabajar de manera más eficiente y consistente. Es especialmente útil en proyectos grandes y complejos donde es crucial tener entornos de desarrollo coherentes y reproducibles.
¿Para qué uso yo #Vagrant?
Principalmente para crear una máquina virtual de forma muy rápida y hacer pruebas sobre ella. Es perfecto para laboratorios de informática, para realizar cursos o cualquier cosa que vayas a probar.
Es buena praxis probar primero en una Máquina Virtual y una vez claro todo lo que quieres y has de hacer, implementarlo en un servidor directamente.
En Windows puedes hacerlo a la vieja usanza o con choco (si no sabes que es choco ya tardas).
Con Chocolatey (abriendo terminal con modo admin):
Ahora ya tienes Vagrant instalado pero si vas a usar VMware Workstation, necesitarás un plugin. Para usarlo con VirtualBox no es necesario. Comentar que en Mac con VirtualBox 7 no me ha funcionado pero con la ultima versión de VirtualBox 6 funcionó a la primera.
Para usar VMware ejecutamos lo siguiente (sin modo admin):
Al realizar el init nos creará un archivo VagrantFile donde habrá que modificar lo siguiente:
Finalmente arrancar la máquina
Si la máquina al arrancar te da un problema prueba a ejecutar como admin lo siguiente:
Ahora probar a arrancar la máquina de nuevo y ejecutar para entrar:
Y ya está, estamos dentro de nuestra máquina virtual.
Como puedes ver nos hemos ahorrado todo el proceso de crear una máquina, realizar instalación demás.
También comentar que puedes modificar el Vagrantfile para provisionar la máquina desde inicio. Imagina que quieres una máquina para experimentos docker. Pues provisonas el Vagranfile con los pasos de instalación de docker y con cada vagrant up que hagas tendrás una máquina con la que probar dockers.
Aquí te presento algunos de los comandos más comunes de Vagrant:
Inicializar un nuevo entorno Vagrant:
Este comando inicializa un nuevo Vagrantfile
en el directorio actual utilizando la caja especificada (si se proporciona).
Iniciar una máquina virtual:
Este comando crea e inicia una nueva máquina virtual según la configuración en el Vagrantfile
.
Detener una máquina virtual:
Este comando apaga la máquina virtual de manera segura.
Suspender una máquina virtual:
Este comando suspende la máquina virtual, guardando su estado actual para que pueda ser reanudada posteriormente.
Reanudar una máquina virtual suspendida:
Este comando reanuda una máquina virtual que ha sido suspendida previamente.
Destruir una máquina virtual:
Este comando destruye la máquina virtual, eliminando todos sus recursos y configuraciones asociadas.
Acceder a una máquina virtual:
Este comando abre una sesión SSH en la máquina virtual, permitiéndote acceder y trabajar en ella desde la línea de comandos.
Actualizar la configuración de la máquina virtual:
Este comando reinicia la máquina virtual y aplica cualquier cambio en la configuración del Vagrantfile
.
Ver el estado de todas las máquinas Vagrant:
Este comando muestra información sobre todas las máquinas Vagrant en todos los proyectos en tu sistema.
Instalar o listar plugins:
Estos comandos permiten instalar o listar plugins disponibles para Vagrant.
Estos son solo algunos de los comandos más comunes de Vagrant. Vagrant ofrece una amplia gama de funcionalidades y opciones, por lo que te recomiendo consultar la documentación oficial de Vagrant o utilizar el comando vagrant --help
para obtener una lista completa de comandos y opciones disponibles.
Configuraciones extras Vagrantfile
Nombre de la Máquina Virtual: Para establecer un nombre para tu máquina virtual, puedes agregar la siguiente línea dentro del bloque de configuración principal de tu Vagrantfile
:
Otras Configuraciones Ajustables: Aquí hay algunas otras configuraciones que puedes ajustar en el bloque de configuración del proveedor VMware:
Configuración de Red: Puedes configurar diferentes tipos de redes, como redes privadas, públicas o de host. Por ejemplo:
Aceleración 3D: Si deseas habilitar o deshabilitar la aceleración 3D, puedes hacerlo con:
Configuración de Almacenamiento: Puedes ajustar la configuración del disco duro virtual (VMDK). Por ejemplo:
Configuración de CPU y Memoria: Como mencioné anteriormente, puedes ajustar el número de CPUs y la memoria RAM:
Configuración de Visualización: Puedes ajustar la resolución de pantalla y otros aspectos relacionados con la visualización:
TPara ponerle un nombre a la máquina virtual en VMware cuando usas Vagrant, puedes usar la propiedad config.vm.hostname
dentro de tu Vagrantfile
. Aquí te muestro cómo hacerlo y algunas otras configuraciones que puedes ajustar:
Nombre de la Máquina Virtual: Para establecer un nombre para tu máquina virtual, puedes agregar la siguiente línea dentro del bloque de configuración principal de tu Vagrantfile
:
Otras Configuraciones Ajustables: Aquí hay algunas otras configuraciones que puedes ajustar en el bloque de configuración del proveedor VMware:
Configuración de Red: Puedes configurar diferentes tipos de redes, como redes privadas, públicas o de host. Por ejemplo:
Aceleración 3D: Si deseas habilitar o deshabilitar la aceleración 3D, puedes hacerlo con:
Configuración de Almacenamiento: Puedes ajustar la configuración del disco duro virtual (VMDK). Por ejemplo:
Configuración de CPU y Memoria: Como mencioné anteriormente, puedes ajustar el número de CPUs y la memoria RAM:
Configuración de Visualización: Puedes ajustar la resolución de pantalla y otros aspectos relacionados con la visualización: