Vagrant es un producto de software de código abierto para crear y mantener entornos portátiles de desarrollo de software virtual ; [5] por ejemplo, para VirtualBox , KVM , Hyper-V , contenedores Docker , VMware y AWS . Intenta simplificar la gestión de la configuración de software de la virtualización para aumentar la productividad del desarrollo. Vagrant está escrito en el lenguaje Ruby , pero su ecosistema admite el desarrollo en algunos otros lenguajes.
Autor (es) original (es) | Mitchell Hashimoto [1] |
---|---|
Desarrollador (es) | HashiCorp (Mitchell Hashimoto y John Bender) |
Versión inicial | 8 de marzo de 2010 [2] |
Lanzamiento estable | 2.2.14 / 20 de noviembre de 2020 [3] |
Repositorio | |
Escrito en | Rubí |
Sistema operativo | Debian , CentOS , Arch Linux , Linux , FreeBSD , macOS y Microsoft Windows |
Disponible en | inglés |
Tipo | Gestión de la configuración |
Licencia | Licencia MIT [4] |
Sitio web | www |
Historia
Vagrant se inició como un proyecto paralelo personal por Mitchell Hashimoto en enero de 2010. La primera versión de Vagrant se lanzó en marzo de 2010. En octubre de 2010, Engine Yard declaró que iban a patrocinar el proyecto Vagrant. La primera versión estable, Vagrant 1.0, se lanzó en marzo de 2012, exactamente dos años después del lanzamiento de la versión original. En noviembre de 2012, Mitchell formó una organización llamada HashiCorp para apoyar el desarrollo a tiempo completo de Vagrant; Vagrant siguió siendo software libre con licencia permisiva . HashiCorp ahora trabaja en la creación de ediciones comerciales y brinda soporte profesional y capacitación para Vagrant.
Vagrant estaba originalmente vinculado a VirtualBox , pero la versión 1.1 agregó soporte para otro software de virtualización como VMware y KVM , y para entornos de servidor como Amazon EC2 . [6] Vagrant está escrito en Ruby , pero puede usarse en proyectos escritos en otros lenguajes de programación como PHP , Python , Java , C # y JavaScript . [7] [8] Desde la versión 1.6, Vagrant es compatible de forma nativa con contenedores Docker , que en algunos casos pueden servir como sustituto de un sistema operativo completamente virtualizado. [9]
Arquitectura
Vagrant utiliza "Provisioners" y "Providers" como bloques de construcción para administrar los entornos de desarrollo. Los aprovisionadores son herramientas que permiten a los usuarios personalizar la configuración de entornos virtuales. Puppet y Chef son los dos aprovisionadores más utilizados en el ecosistema Vagrant ( Ansible ha estado disponible desde al menos 2014 [10] ). Los proveedores son los servicios que utiliza Vagrant para configurar y crear entornos virtuales. La compatibilidad con la virtualización de VirtualBox , Hyper-V y Docker se envía con Vagrant, mientras que VMware y AWS son compatibles a través de complementos.
Vagrant se asienta sobre el software de virtualización como un contenedor y ayuda al desarrollador a interactuar fácilmente con los proveedores. Automatiza la configuración de entornos virtuales utilizando Chef o Puppet , y el usuario no tiene que utilizar directamente ningún otro software de virtualización. Los requisitos de la máquina y el software se escriben en un archivo llamado "Vagrantfile" para ejecutar los pasos necesarios para crear una caja lista para el desarrollo. "Box" es un formato y una extensión (.box) para entornos Vagrant que se copia a otra máquina para replicar el mismo entorno. La documentación oficial de Vagrant [11] detalla la instalación, el uso de la línea de comandos y la configuración relevante de Vagrant.
Referencias
- ↑ Marvin, Rob (26 de febrero de 2015). "Mitchell Hashimoto está automatizando el mundo" . Tiempos de desarrollo de software . Tiempos de desarrollo de software . Consultado el 27 de junio de 2016 .
- ^ "mitchellh / vagrant: versión v0.1.0" . GitHub . Consultado el 6 de septiembre de 2015 .
- ^ "Lanzamientos · hashicorp / vagrant · GitHub" . Consultado el 2 de febrero de 2021 .
- ^ "hashicorp / vagabundo" . GitHub .
- ^ "Presentación de Vagrant | Linux Journal" . www.linuxjournal.com . Consultado el 14 de septiembre de 2016 .
- ^ Mitchell Hashimoto (2013). Vagrant: en funcionamiento (PDF) . O'Reilly Media . pag. 13. ISBN 978-1449335830.
- ^ "Vagrant: creación de máquinas virtuales como EC2 y aprovisionamiento de Ruby" . Consultado el 14 de mayo de 2012 .
- ^ "Vagrant - Introducción - Configuración del proyecto" . Consultado el 19 de enero de 2016 .
- ^ Mitchell Hashimoto (6 de mayo de 2014). "Vagabundo 1.6" . Archivado desde el original el 10 de julio de 2018 . Consultado el 23 de febrero de 2020 .
- ^ Brett, Adam (23 de septiembre de 2014). "Tutorial de inicio rápido de Vagrant & Ansible" . adamcod.es . Consultado el 6 de agosto de 2017 .
- ^ "Documentación" . Vagrant de HashiCorp . Consultado el 27 de marzo de 2021 .
enlaces externos
- Página web oficial
- Lista de cajas Vagrant