$ sudo apt-get install virtualbox$ sudo apt-get install vagrant$ sudo apt-get install virtualbox-dkmsLas cajas en vagrant son imagenes de máquinas virtuales. Una vez que instalamos una caja, podemos utilizarla para nuestro proyecto, internamente vagrant clona la máquina virtual y la asocia al proyecto.
$ vagrant box add precise32 http://files.vagrantup.com/precise32.boxBoxes: vagrantbox
$ vagrant box listoutput: precise32 (virtualbox, 20160406.0.0)
Vamos a crear un directorio donde configuraremos el proyecto vagrant
$ mkdir -p ~/Vagrant/precise32
$ cd ~/Vagrant/precise32/Ahora iniciaremos el proyecto y editaremos el archivo Vagrantfile:
$ vagrant init
$ ls
$ vim Vagrantfile- Reemplazar config.vm.box = "base" por config.vm.box = "precise32"
- Descomentar (Para descomentar quitar el gato):
# config.vm.network "forwarded_port", guest: 80, host: 8080debe quedar así:
config.vm.network "forwarded_port", guest: 80, host: 8080Si quisieramos podemos cambiar el puerto 8080 por otro. Por ejemplo podemos utilizar el 8787.
Ahora levantaremos la máquina virtual:
$ vagrant upY nos conectamos por ssh:
$ vagrant sshCrearemos dos carpetas que enseguida utilizaremos:
$ mkdir Downloads
$ mkdir CodeSi usamos Ubuntu virtualizado a través de virtualbox desde vagrant y queremos compartir carpetas es necesarios instalar VirtualBox Guest Additions. Este método funciona, está testeado con Ubuntu 14.04.
Descargar el archivo VBoxGuestAdditions_4.3.8.iso
wget http://download.virtualbox.org/virtualbox/4.3.8/VBoxGuestAdditions_4.3.8.isoInstalar los paquetes dkms gcc
sudo apt-get install dkms gccMontar el archivo iso VBoxGuestAdditions_4.3.8.iso en /mnt
sudo mount -o loop VBoxGuestAdditions_4.3.8.iso /mntCambiar a /mnt y ejecutar ./VBoxLinuxAdditions.run
cd /mnt
sudo ./VBoxLinuxAdditions.runApagar la máquina en caso de estar encendida:
$ vagrant haltEditamos el archivo de configuración:
$ vim ~/Vagrant/precise32/VagrantfileDescomentar la línea donde aparece config.vm.synced_folder:
# config.vm.synced_folder "../data", "/vagrant_data"Donde "../data" corresponde a la ruta del sistema anfitrion y "/vagrant_data" a la carpeta compartida de la VM.
Cambiar estas rutas por las que quieras.
Importante: Los directorios deben existir previamente en ambas máquinas de lo contrario no podrás iniciar la VM.
config.vm.synced_folder "/home/andres/Code", "/home/vagrant/Code"Una vez hecho esto ya podemos compartir nuestros archivos entre la máquina anfitrion y la máquina virtual.
Ahora podemos iniciar la máquina virtual y comenzar a instalar los programas que necesitaremos en nuestro entorno de desarrollo como por ejemplo vim, apache2, php, mysql, etc.