Vagrant


Vagrant es una herramienta de código abierto para la creación y gestión de entornos virtualizados de desarrollo

Vagrant
oscar Escrito por oscar 30 January 2025 18 0

Vagrant es la utilidad de línea de comandos para gestionar el ciclo de vida de las máquinas virtuales. Aísle las dependencias y su configuración en un único entorno consistente y desechable.

Vagrant
Vagrant

Introducción y Configuración Inicial

Enlace Descripción Código
¿Qué es Vagrant? ¿Por qué usarlo? Comparación con Docker y VirtualBox.  
Instalación de Vagrant y VirtualBox en Exploraremos las diferentes formas de instalar vagrant en distintos S.O. usando el proveedor Virtual Box
  • Windows
  • Linux
Primeros comandos en vagrant Explicaremos los comandos de y realizaremos ejemplos
vagrant init
vagrant up
vagrant halt
vagrant destroy
Explorando el Vagrantfile vagrantfile permite describir y configurar la máquina virtual que se creará en el sistema
# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/bionic64"
end

 

Creación y personalización de una máquina virtual Creación y personalización de una máquina virtual con vagrant modificando el archivo vagrantfile  
Conexión a la VM con vagrant ssh En este post explicaremos como conectarnos a la maquina creada en vagrant con vagrant ssh
vagrant ssh
Resolución de errores comunes y troubleshooting básico Resolución de errores comunes y troubleshooting en vagrant  

Configuración y Provisión

Arquitectura de vagrant
Arquitectura de vagrant

 

Enlace Descripción Código
Configuración de CPU, RAM y disco en el Vagrantfile. Aprenderás a configurar CPU RAM y disco en el Vagrantfile
Vagrant.configure("2") do |config| 
  config.vm.box = "ubuntu/bionic64"
  config.vm.provider "virtualbox" do |vb|
    vb.name = "mi_maquina_virtual"
    vb.memory = 2048
    vb.cpus = 2
  end
end
Configuración de redes en vagrant Vagrant permite definir redes para tus máquinas virtuales de forma sencilla y controlada a través del archivo Vagrantfile
Vagrant.configure("2") do |config| 
  config.vm.box = "ubuntu/focal64"
  config.vm.network "forwarded_port", guest: 80, host: 8080
end
Carpetas compartidas en vagrant Aprender a compartir carpetas entre el host y la máquina virtual (VM) es fundamental para usar Vagrant de forma eficiente
config.vm.synced_folder "./compartido", "/home/vagrant/compartido"
Automatiza tu Entorno de Desarrollo con Vagrant y Shell Scripts Aprende a automatizar la configuración de tus entornos de desarrollo usando Vagrant y scripts de shell. Tutorial paso a paso con ejemplos
Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/bionic64"
  # Aprovisionamiento con un script shell externo 
  config.vm.provision "shell", path: "setup.sh"
end
Instalar Puppet Server y Agente en máquinas virtuales con vagrant En esta practica vamos a Instalar Puppet Server y Agente en máquinas virtuales con vagrant, veremos como firmar los certificados y realizaremos una prueba  
Instalar puppet agente en vagrant Instalar puppet agente en vagrant  

Personalización del Entorno

  • Redirección de puertos y acceso desde el host.
  • Aprovisionamiento con Ansible.
  • Chef.

Administración de Boxes y Multi-Máquinas

Enlace Descripcíon Código
Seguridad en Vagrant: claves SSH, firewalls y permisos. Seguridad en Vagrant: claves SSH, firewalls y permisos.  
¿Qué es una box en Vagrant? En Vagrant, una box (o "caja") es una imagen base preempaquetada que contiene un sistema operativo con una configuración mínima
vagrant box list
Creación de una box personalizada con vagrant Creación de una box personalizada con vagrant  
Administración de boxes en vagrant Administración de boxes en vagrant
vagrant box add
vagrant box list
vagrant box remove
Configuración de múltiples máquinas en un solo Vagrantfile. Configuración de múltiples máquinas en un solo Vagrantfile  
Comunicación entre máquinas en un entorno multi-máquina Comunicación entre máquinas en un entorno multi-máquina  
Debugging y logs en Vagrant Debugging y logs en Vagrant  
Uso de plugins en Vagrant Uso de plugins en Vagrant  

Comentario

Debe aceptar antes de enviar