GNU/Linux >> Tutoriales Linux >  >> Ubuntu

​Tutorial Vagrant:Todo lo que un Principiante Necesita Saber

Introducción

vagabundo es una herramienta de código abierto que le permite crear, configurar y administrar cajas de máquinas virtuales a través de una interfaz de comandos fácil de usar. Esencialmente, es una capa de software instalada entre una herramienta de virtualización (como VirtualBox, Docker, Hyper-V) y una VM.

A menudo se usa en el desarrollo de software para garantizar que todos los miembros del equipo estén construyendo para la misma configuración. No solo comparte entornos, sino que también comparte código. Esto permite que el código de un desarrollador funcione en el sistema de otro, lo que hace posible el desarrollo colaborativo y cooperativo.

Este tutorial lo guía a través de todo lo que necesita saber sobre la configuración y administración de Vagrant.

Primeros pasos con Vagrant

Antes de comenzar, asegúrese de que ya tiene una solución de virtualización en su sistema. Las soluciones que funcionan con Vagrant incluyen VirtualBox, VMware, Docker, Hyper-V y soluciones personalizadas.

Instalación

1. Para encontrar la última versión de Vagrant, use un navegador web para navegar a su página web oficial:

https://www.vagrantup.com/downloads.html

2. Verá una lista de todos los diferentes sistemas operativos compatibles, con un paquete de 32 y 64 bits para cada uno. Descargue el archivo apropiado para su sistema operativo y luego ejecute el instalador.

3. Hay dos formas de verificar si la instalación fue exitosa:

  • Puedes usar:
vagrant -v

que debería mostrar el número de versión que se ejecuta en su computadora. La última versión hasta la fecha es Vagrant 2.2.6 .

  • O puede escribir el siguiente comando en la terminal:
vagrant

Esta salida le mostraría una lista de comandos de uso frecuente si la herramienta se instaló correctamente.

Configuración del Proyecto Vagrant

1. Comience creando un directorio para almacenar su archivo Vagrant:

sudo mkdir vagrant-test
cd vagrant-test

2. Descargue la distribución Ubuntu Trusty Tahr de una biblioteca común y cree un archivo Vagrant básico con:

vagrant init ubuntu/trusty64

Si lo desea, puede navegar a https://app.vagrantup.com/boxes/search y descargar un Vagrantbox de su elección.

Cuando ejecuta el init comando, Vagrant instala el cuadro en el directorio actual. El Vagrantfile se coloca en el mismo directorio y se puede editar o copiar.

Cajas Vagabundos

La unidad básica en una configuración de Vagrant se llama "caja" o "Vagrantbox". Esta es una imagen completa e independiente de un entorno de sistema operativo.

Un Vagrant Box es un clon de una imagen base del sistema operativo. El uso de un clon acelera el proceso de lanzamiento y aprovisionamiento.

1. En lugar de usar init comando anterior, simplemente puede descargar y agregar un cuadro con el comando:

vagrant box add ubuntu/trusty64

Esto descarga la caja y la almacena localmente.

2. A continuación, debe configurar Vagrantfile para la caja virtual que servirá. Abra el Vagrantfile con el comando:

sudo vi vagrantfile

3. Una vez que el Vagrantfile esté abierto, cambie el config.vm.box cadena de "base" a “ubuntu/trusty64” .

config.vm.box = "ubuntu/trusty64"

Puede agregar otra línea arriba del end comando para especificar una versión de caja:

config.vm.box_version = “1.0.1”

O puede especificar una URL para vincular directamente al cuadro:

config.vm.box_url = “https://vagrantcloud.com/ubuntu/trusty64”

Si desea eliminar un cuadro, use lo siguiente:

vagrant box remove ubuntu/trusty64

Archivo vagabundo

En lugar de crear una imagen completa del sistema operativo y copiarla, Vagrant usa un "archivo Vagrant" para especificar la configuración de la caja.

Aprovisionamiento

Si gastó lo suficiente en el sistema operativo invitado, es posible que haya notado que no viene cargado con muchas aplicaciones.

Afortunadamente, Vagrant admite el aprovisionamiento automático a través de un bootstrap.sh archivo guardado en el mismo directorio que el Vagrantfile.

Para agregar un monitor de recursos básico, nmon , en el sistema operativo huésped use el comando:

sudo vi bootstrap.sh

En ese archivo, ingrese lo siguiente:

#!/usr/bin/env bash

apt-get update

apt-get install -y nmon

if ! [ -L /var/www ]; then

rm -rf /var/www

ln -fs /vagrant /var/www

fi

Guardar el archivo y salir. A continuación, edite el Vagrantfile y agregue la línea de aprovisionamiento. Debería tener el siguiente aspecto:

Vagrant.configure("2") do |config|

config.vm.box = "ubuntu/trusty64"

config.vm.provision :shell, path: "bootstrap.sh"

end

Cuando Vagrant lee el Vagrantfile, se redirige para leer bootstrap.sh archivo que acabamos de crear. Ese archivo de arranque actualizará el administrador de paquetes, luego instalará el nmon paquete. Si usas vagrant up y vagrant ssh comandos, ahora debería poder ejecutar nmon para una visualización de los recursos de la máquina virtual.

El aprovisionamiento le brinda una poderosa herramienta para preconfigurar su entorno virtual. También podrías hacer lo mismo con apache2 y crea un servidor web en tu entorno virtual.

Proveedores

Este tutorial le muestra cómo usar Vagrant con VirtualBox. Sin embargo, Vagrant también puede funcionar con muchos otros proveedores de backend.

Para iniciar Vagrant usando VMware, ejecute el comando:

vagrant up –provider=vmware_fusion

O puede iniciar Vagrant usando Amazon Web Services con:

vagrant up –provider=aws

Una vez que se ejecuta el comando inicial, los comandos posteriores se aplicarán al mismo proveedor.

Lanzamiento y conexión

Vagante arriba

El comando principal para lanzar su nuevo entorno virtual es:

vagrant up

Esto ejecutará el software e iniciará un entorno virtual de Ubuntu rápidamente. Sin embargo, aunque la máquina virtual se esté ejecutando, no verá ningún resultado. Vagrant no proporciona ningún tipo de interfaz de usuario.

SSH vagabundo

Puede conectarse a su máquina virtual (y verificar que se está ejecutando) mediante una conexión SSH:

vagrant ssh

Esto abre una conexión shell segura a la nueva máquina virtual. Su símbolo del sistema cambiará a [email protected] para indicar que ha iniciado sesión en la máquina virtual.

Una vez que haya terminado de explorar la máquina virtual, puede salir de la sesión con CTRL-D . La máquina virtual seguirá ejecutándose en segundo plano, pero la conexión SSH se cerrará.

Para detener la ejecución de la máquina virtual, ingrese:

vagrant destroy

El archivo que descargó permanecerá, pero todo lo que se estaba ejecutando dentro de la máquina virtual desaparecerá.

Carpetas sincronizadas

Vagrant sincroniza automáticamente el contenido que se encuentra en el directorio de su proyecto con un directorio especial en el sistema invitado (virtual). El directorio del proyecto es el que creó anteriormente, /vagrant-test . También es el mismo que contiene el Vagrantfile.

Cuando inicia sesión en la máquina virtual, por defecto comienza en /home/vagrant/ directorio. Un directorio diferente, /vagrant/ , contiene los mismos archivos que están en su sistema host.

Puedes usar vagrant up y vagrant ssh para iniciar e iniciar sesión en la máquina virtual, luego cree un documento de prueba en /vagrant directorio.

Usa el exit comando para cerrar la sesión SSH, luego use ls para enumerar el contenido de su directorio de pruebas vagabundas. Debería mostrar el archivo de prueba que creó.

Esta es una forma práctica de administrar archivos en el sistema operativo huésped sin tener que usar una sesión SSH.

Redes

Vagrant incluye opciones para colocar su máquina virtual en una red. Al final de su Vagrantfile, justo antes del end comando, use el config.vm.network Comando para especificar la configuración de red.

Por ejemplo:

config.vm.network “forwarded_port”, guest: 80, host: 8080

Para que se realicen los cambios, guardar y recarga Vagrant con el comando:

vagrant reload

Esto crea un puerto reenviado para el sistema invitado. También puede definir redes privadas, redes públicas y otras opciones más avanzadas.

Compartir vagabundos

Vagrant tiene una función útil que puede usar para compartir su entorno de Vagrant mediante una URL personalizada.

Con su entorno Vagrant ejecutándose, use el siguiente comando:

vagrant share

El sistema creará una sesión de Vagrant Share y luego generará una URL. Esta URL se puede copiar y enviar a otra persona. Si tiene Apache configurado en su sesión de Vagrant, cualquiera que use esta URL puede ver su página de configuración de Apache. Esta URL cambia a medida que modifica el contenido de su carpeta compartida.

Puede cerrar la sesión compartida con CTRL-C .

Para obtener más información, consulte la documentación de Vagrant Sharing.

Limpiar vagabundo

Una vez que haya terminado de trabajar en su sistema invitado, tiene algunas opciones para finalizar la sesión.

1. Para detener la máquina y guardar su estado actual, ejecute:

vagrant suspend

Puede reanudar ejecutando vagrant up otra vez. Esto es muy parecido a poner la máquina en modo de suspensión .

2. Para apagar la máquina virtual, use el comando:

vagrant halt

Nuevamente, vagrant up reiniciará la misma máquina virtual y podrá continuar donde lo dejó. Esto es muy parecido a apagar una máquina normal.

3. Para eliminar todos los rastros de la máquina virtual de su sistema, escriba lo siguiente:

vagrant destroy

Se eliminará todo lo que haya guardado en la máquina virtual. Esto libera los recursos del sistema utilizados por Vagrant.

La próxima vez que vagrant up , la máquina tendrá que ser reimportada y reaprovisionada. Esto es muy parecido a formatear un disco duro en un sistema, luego recargar una imagen nueva .


Ubuntu
  1. ​Tutorial Vagrant:Todo lo que un Principiante Necesita Saber

  2. Podman vs Docker:Todo lo que necesitas saber

  3. Comenzando con Vagrant en Ubuntu 14.10 - Una guía para principiantes

  4. Cómo configurar un entorno de desarrollo LAMP en Vagrant

  5. ¿Cómo sé si es necesario ejecutar systemctl daemon-reload?

Tutorial de Vagrant:Primeros pasos con Vagrant en Linux

Cómo eliminar cajas vagabundas obsoletas en Linux

Cómo controlar Vagrant Box usando comandos de Vagrant

Cómo crear una caja vagabunda a partir de una caja existente

Todo lo que necesita saber sobre el sistema operativo Linux Zorin

Todo lo que necesita saber sobre el sistema operativo Peppermint Linux