Cómo crear un Box en Vagrant
Qué es Vagrant
Vagrant es una herramienta con la que podemos automatizar gran parte de los procesos de creación y gestión de máquinas virtuales. Mediante esta herramienta, la creación de entornos de desarrollo portables se facilita enormemente, ya que permite a los desarrolladores reducir el número de errores entre el paso de desarrollo a producción.
Qué es un Box
Esta herramienta parte de unas imágenes muy optimizadas llamadas boxes, que son sistemas operativos preinstalados, a partir de los cuales se crean las máquinas virtuales, que una vez creadas se pueden provisionar con el software que se necesite en cada caso.
Normalmente la creación de boxes la realizan pocos desarrolladores, ya que la mayoría suele recurrir a los catálogos oficiales de boxes, dónde se puede descargar la que se necesite, y a partir de ella construir el entorno en el que se va a trabajar.
Cómo crear un box desde cero
No obstante siempre tenemos la posibilidad de crear nuestras propias boxes desde cero, un proceso que resulta un proceso manual bastante “pesado”, al que se suele recurrir principalmente en estos casos:
- Cuando no existe en el catálogo ninguna box para el sistema operativo que deseamos, algo que es poco habitual.
- Se quiere practicar con la herramienta para conocerla más a fondo.
En caso de comenzar el desarrollo de una box desde cero, hay una serie de pasos que se deben seguir para ello. Para crear un box de background para el provider VirtualBox, ya que otros como VMWare o Hyper-V tienen algunos puntos comunes pero también algunos diferentes, los pasos a seguir son estos:
- Crear la máquina virtual con el VirtualBox, que debe tener estas características:
- Disco duro resizeable de entre 40GB - 100GB
- RAM comprendida entre 360MB - 512MB
- Deshabilitar todos los recursos que no se vayan a utilizar, por ejemplo el USB
- La primera interfaz de red debe ser NAT<
- Configurar el Sistema Operativo, con estas características:
- Crear un usuario llamado vagrant, que debe ser administrador con el comando sudoer, con el atributo requiretty deshabilitado
- Instalar un servidor SSH
- Instalar las Virtualbox additions, para optimizar la máquina virtual creada con la box
- Instalar el software adicional (nfs o smb), si queremos utilizar directorios compartidos o sincronizados
- Minimizar el tamaño de la box final, para lo que podemos:
- Eliminar paquetes innecesarios
- Llenar con ceros el disco virtual y eliminar espacio sobrante
Empaquetamiento de nuestra Box
Finalmente procedemos a empaquetar la box, lo que haremos con el comando vagrant package --base my_new_box
, siendo my_new_box
el nombre de la máquina que aparece en la GUI de VirtualBox
Estos son los consejos para crear una box desde cero empleando VirtualBox. Si quieres aprender a manejar Vagrant de forma profunda es un buen ejercicio para realizar, aunque realmente no es algo indispensable para utilizar esta magnífica herramienta.
Si eres administrador de sistemas, este curso gratuito te interesa para conocer la evolución natural que están siguiendo algunos profesionales como tú.
También puedes visitar el Centro de Recursos, encontrarás las últimas guías, ebooks y webinars de programación, sistemas y gestión de talento IT.