Installera Vagrant
Starta en hel Linux-maskin inuti er egen dator, beskriven i en textfil som företaget kan dela, så att alla kör exakt samma miljö.
Vad Vagrant är
Ett verktyg som startar en hel dator inuti er dator, beskriven i en textfil. Filen är på fem rader, och den som får den kan starta exakt samma maskin som ni har. Samma operativsystem, samma program, samma inställningar.
Poängen märks först när ni är fler än en i företaget. Det klassiska problemet är att något fungerar på en dator men inte på en annan, och att ingen kan säga varför. Med Vagrant finns svaret i filen. Fungerar det inte, fungerar det inte för någon, och då går det att felsöka på riktigt.
Den andra användningen är att våga testa saker. Maskinen är en kopia. Förstör ni den river ni den och startar en ny på några minuter, och er riktiga dator har inte märkt något.
Ni behöver VirtualBox först
Vagrant startar inte maskiner själv, det säger åt ett annat program att göra det. Det programmet heter en provider, och det vanligaste är VirtualBox, som är gratis. Installera det innan Vagrant, annars stannar allt på första kommandot.
Ladda ner VirtualBox från virtualbox.org för Windows. På Linux Mint heter paketet virtualbox och installeras med sudo apt-get install virtualbox.
En sak till om Windows: VirtualBox och WSL2 slåss ibland om samma funktion i datorn, och har ni Docker Desktop igång sedan tidigare kan VirtualBox vägra starta maskiner. Stäng av Docker Desktop medan ni arbetar med Vagrant, så slipper ni leta efter felet.
Windows
Hämta installationsprogrammet från hashicorp.com och kör det. Öppna sedan PowerShell och kontrollera att det gick fram:
vagrant --version
Får ni ett felmeddelande om att kommandot inte hittas, logga ut och in igen. Det räcker nästan alltid.
Linux Mint
Vagrant ligger i utgivarens eget paketarkiv. Öppna Terminal och kör raderna i ordning:
wget -O - https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt-get update && sudo apt-get install vagrant
Linux Mint bygger på Ubuntu men har egna versionsnamn, och lsb_release -cs svarar med Mints namn, till exempel wilma. Det namnet finns inte i arkivet. Byt då ut det mot Ubuntu-namnet som er Mint-version bygger på, vilket står i filen /etc/os-release på raden UBUNTU_CODENAME.
Tre saker att göra först
- Skapa en mapp för projektet och kör
vagrant init bento/ubuntu-24.04i den. Ni får en fil som heterVagrantfile. Öppna den och läs. Den är mest kommentarer, och de förklarar mer än de flesta guider gör. - Starta maskinen med
vagrant up. Första gången laddas en avbild på ett par gigabyte ner, så det tar en stund. Gången därpå går det på under en minut, för avbilden ligger kvar. - Logga in med
vagrant ssh. Nu sitter ni i ett Linux-system som inte är er egen dator. Installera något, ta sönder något, och stäng sedan av medexitföljt avvagrant destroy. Att det går att slänga är hela poängen.
Den vanligaste fällan
Att tro att filerna inuti maskinen är säkra. Mappen ni står i på er egen dator delas automatiskt in i maskinen som /vagrant, och det är där ni ska lägga ert arbete. Allt annat inuti maskinen försvinner den dag ni kör vagrant destroy, och det kommandot kommer ni att köra, för det är så här verktyget är tänkt att användas.
Spara därför kod i den delade mappen, aldrig i hemmappen inuti maskinen. Då ligger den kvar på er riktiga dator, och maskinen blir det den ska vara: en utbytbar sak.
Värt att veta också: Vagrant ligger sedan några år under en licens som heter BSL. För att lära er, utveckla och köra egna projekt är den gratis, och det gäller ett företag. Det är först när man bygger en konkurrerande tjänst av själva verktyget som villkoren slår till.