====== Vagrant ====== Herramienta para la creación y configuración de entornos de desarrollo virtualizados. * [[https://www.vagrantup.com/|Web oficial]] ===== Terminología ===== * **Box**: entorno Vagrant empaquetado. * **Provider**: sistema subyacente que gestiona la las máquinas virtuales (VirtualBox, Docker, VMware...) * **Provisioner**: sistemas que permiten la instalación de programas o configurar las máquinas virtuales como Chef o Puppet * **Vagrantfile**: fichero usado para personalizar un entorno Vagrant. Escrito en Ruby ===== Uso ===== Por defecto, Vagrant utiliza [[informatica:sistemas_operativos:virtualizacion:virtualbox|VirtualBox]] como hipervisor para la creación y gestión de máquinas virtuales. ==== Boxes ==== Las //boxes// son unas imágenes básicas sobre las cuales Vagrant puede crear rápidamente una máquina virtual. * [[https://app.vagrantup.com/boxes/search|Buscador de boxes]] * [[https://app.vagrantup.com/boxes/search|Repositorio oficial de boxes]] ==== Vagrantfile ==== Para la creación de un entorno virtualizado con Vagrant es necesario definirlo en un fichero llamado ''Vagrantfile''. Ejemplo: Vagrant.configure("2") do |config| config.vm.box = "debian/buster64" end ===== Línea de comandos ===== Eliminar máquina: vagrant destroy nombre-maquina Crear y arrancar una máquina virtual si está definida en un ''Vagrantfile'': vagrant up * ''vagrant init'': inicializa un directorio como entorno Vagrant, crea un fichero ''Vagrantfile''. * ''vagrant box add '': Añade una box de Vagrant al entorno. * ''vagrant up'': crea y configura la máquina virtual definida en el ''Vagrantfile''. * ''vagrant ssh'': se conecta por SSH a la máquina virtual. * ''vagrant halt'': intenta apagar correctamente la máquina virtual. * ''vagrant suspend'': suspende la máquina virtual (congela el estado en el que está), no la apaga. * ''vagrant resume'': arranca una máquina detenida, fuese suspendida o parada. * ''vagrant reload'': rienicia la máquina virtual, es lo mismo que ''vagrant halt'' y luego ''vagrant resume''. * ''vagrant status'': muestra el estado de las máquinas gestionadas por Vagrant. * ''vagrant destroy'': Elimina la máquina virtual.