Per començar a treballar amb Vagrant a Linux Mint, et detallo el procés pas a pas des de zero: la instal·lació, la configuració amb VirtualBox com a proveïdor, la creació de les boxes (imatges base) i el desplegament de les Màquines Virtuals (MVs) amb el fitxer Vagrantfile.
Pas 1: Instal·lació de Vagrant i VirtualBox a Linux Mint
Primer, has d’instal·lar VirtualBox (que és el motor de virtualització que utilitzarà Vagrant per defecte) i després Vagrant. Obre el terminal i executa les següents comandes:
Bash
sudo apt update && sudo apt upgrade -y

- Explicació: Actualitza la llista de paquets disponibles als repositoris i actualitza el sistema operatiu per evitar conflictes de dependències.
- Com verificar-ho: Si no mostra errors crítics al final, el sistema està preparat.
Bash
sudo apt install virtualbox vagrant -y
- Explicació: Instal·la VirtualBox (necessari perquè Vagrant pugui aixecar les màquines virtuals) i Vagrant.
- Com verificar-ho: Pots comprovar que s’han instal·lat correctament executant
vboxmanage --versionivagrant --version.
Pas 2: Crear l’entorn de treball i inicialitzar Vagrant
Crea una carpeta al teu directori personal per organitzar el projecte de les MVs i entra-hi:
Bash
mkdir ~/vagrant-project && cd ~/vagrant-project
- Explicació:
mkdircrea un directori nou anomenatvagrant-projecticds’hi desplaça a l’interior. - Com verificar-ho: Executa
pwdi assegura’t que la ruta acaba en/vagrant-project.
Pas 3: Inicialitzar i configurar el Vagrantfile
Vagrant utilitza una box (imatge base) per crear les màquines. Utilitzarem una de Debian (molt habitual a l’SMX) o Ubuntu com a exemple. Inicialitza l’entorn amb una box d’Ubuntu o Debian:
Bash
vagrant init debian/bookworm64
- Explicació: Crea un fitxer de configuració anomenat
Vagrantfileal directori actual configurat per utilitzar la box oficial de Debian Bookworm (12) de 64 bits. - Com verificar-ho: Executa
ls -lai comprova que apareix el fitxerVagrantfile.
Pas 4: Personalitzar el Vagrantfile (Configuració de les MVs)
Obre el fitxer Vagrantfile amb un editor de text (com nano):
Bash
nano Vagrantfile
- Explicació: Obre l’editor de text nano per modificar el fitxer de configuració de Vagrant.
Modifica o descomenta les línies necessàries perquè la configuració quedi semblant a aquesta (aquesta és la configuració estàndard recomanada per a pràctiques):
Ruby
Vagrant.configure("2") do |config|
config.vm.box = "debian/bookworm64"
# Configuració de xarxa: Xarxa privada (IP fixa per a la MV)
config.vm.network "private_network", ip: "192.168.56.10"
# Configuració de recursos de maquinari (VirtualBox)
config.vm.provider "virtualbox" do |vb|
vb.memory = "1024" # Assigna 1 GB de RAM
vb.cpus = 2 # Assigna 2 nuclis de CPU
end
end

(Guarda el fitxer prement Ctrl + O, Enter i surt amb Ctrl + X).
Pas 5: Engegar i gestionar la Màquina Virtual
Bash
vagrant up
- Explicació: Llegeix el
Vagrantfile, descarrega automàticament la box de Debian si no la tens al ordinador, crea la màquina virtual a VirtualBox amb la RAM, CPU i IP configurades i l’engega. - Com verificar-ho: Executa
vagrant statusper veure si l’estat indicarunning.
Bash
vagrant ssh
- Explicació: Et connecta per SSH directament a l’interior de la Màquina Virtual de manera automàtica, sense necessitat de contrasenyes ni configuracions addicionals de claus.
- Com verificar-ho: Un cop dins, veureàs que el prompt del terminal canvia (per exemple,
vagrant@debian-...). Pots escriureexitper tornar a la teva màquina física (Linux Mint).
Justificació dels elements que necessita Vagrant per gestionar una MV (Imatge superior de la captura)
- Un Proveïdor (Provider): Com ara VirtualBox o KVM. És necessari perquè Vagrant no virtualitza directament per si sol; necessita un programari de sota que creï i gestioni els talls de maquinari, discs durs i xarxa virtual.
- Una Box (Imatge base): És la plantilla empaquetada del sistema operatiu (amb el disc i configuracions bàsiques). Vagrant la necessita per no haver d’instal·lar el sistema operatiu des de zero (ISO), estalviant temps i estandarditzant el entorn.
- Un fitxer de configuració (
Vagrantfile): On s’especifiquen de manera automatitzada (Infrastructure as Code) els paràmetres de xarxa, memòria RAM, CPUs, carpetes compartides i programari a instal·lar.