Úvod
Vagrant je nástroj s otevřeným zdrojovým kódem, který vám umožňuje vytvářet, konfigurovat a spravovat krabice virtuálních strojů prostřednictvím snadno použitelného příkazového rozhraní. V podstatě se jedná o vrstvu softwaru nainstalovanou mezi virtualizačním nástrojem (jako je VirtualBox, Docker, Hyper-V) a virtuálním počítačem.
Často se používá při vývoji softwaru, aby se zajistilo, že všichni členové týmu vytvářejí stejnou konfiguraci. Nejen, že sdílí prostředí, ale také sdílí kód. To umožňuje kódu od jednoho vývojáře pracovat na systému jiného vývojáře, což umožňuje společný a kooperativní vývoj.
Tento výukový program vás provede vším, co potřebujete vědět o konfiguraci a správě Vagrant.
Začínáme s Vagrant
Než začnete, ujistěte se, že již máte virtualizační řešení na vašem systému. Mezi řešení, která fungují s Vagrant, patří VirtualBox, VMware, Docker, Hyper-V a vlastní řešení.
Instalace
1. Chcete-li najít nejnovější verzi Vagrant, přejděte pomocí webového prohlížeče na jeho oficiální webovou stránku:
https://www.vagrantup.com/downloads.html
2. Zobrazí se seznam všech různých podporovaných operačních systémů s 32bitovým a 64bitovým balíčkem pro každý z nich. Stáhněte si příslušný soubor pro váš operační systém a poté spusťte instalační program.
3. Existují dva způsoby, jak zkontrolovat, zda byla instalace úspěšná:
- Můžete použít buď:
vagrant -v
který by měl zobrazovat číslo verze běžící na vašem počítači. Nejnovější verze je Vagrant 2.2.6 .
- Nebo můžete do terminálu zadat následující příkaz:
vagrant
Tento výstup by vám ukázal seznam často používaných příkazů, pokud byl nástroj nainstalován správně.
Nastavení projektu Vagrant
1. Začněte vytvořením adresáře pro uložení vašeho souboru Vagrant:
sudo mkdir vagrant-test
cd vagrant-test
2. Stáhněte si distribuci Ubuntu Trusty Tahr ze společné knihovny a vytvořte základní soubor Vagrantfile s:
vagrant init ubuntu/trusty64
Pokud chcete, můžete přejít na https://app.vagrantup.com/boxes/search a stáhnout si Vagrantbox dle vlastního výběru.
Když spustíte init
Vagrant nainstaluje box do aktuálního adresáře. Soubor Vagrantfile je umístěn ve stejném adresáři a lze jej upravovat nebo kopírovat.
Vagrant boxy
Základní jednotka v nastavení Vagrant se nazývá „box“ nebo „Vagrantbox“. Toto je úplný, samostatný obraz prostředí operačního systému.
Vagrant Box je klon obrazu základního operačního systému. Použití klonu urychlí proces spouštění a zajišťování.
1. Místo použití init
výše, můžete jednoduše stáhnout a přidat pole s příkazem:
vagrant box add ubuntu/trusty64
Tím se stáhne krabice a uloží se lokálně.
2. Dále musíte nakonfigurovat Vagrantfile pro virtuální schránku, kterou bude sloužit. Otevřete soubor Vagrantfile příkazem:
sudo vi vagrantfile
3. Po otevření souboru Vagrantfile změňte config.vm.box řetězec z „základny“ na „ubuntu/trusty64“ .
config.vm.box = "ubuntu/trusty64"
Nad end
můžete přidat další řádek příkaz k určení verze krabice:
config.vm.box_version = “1.0.1”
Nebo můžete zadat adresu URL, která bude odkazovat přímo na pole:
config.vm.box_url = “https://vagrantcloud.com/ubuntu/trusty64”
Pokud chcete krabici odstranit, použijte následující:
vagrant box remove ubuntu/trusty64
VagrantFile
Namísto vytvoření kompletního obrazu operačního systému a jeho zkopírování používá Vagrant „Vagrantfile“ ke specifikaci konfigurace boxu.
Zajišťování
Pokud jste v hostujícím OS utratili dost, možná jste si všimli, že v něm není mnoho aplikací.
Naštěstí Vagrant podporuje automatické zřizování prostřednictvím bootstrap.sh uložený ve stejném adresáři jako Vagrantfile.
Chcete-li přidat základní monitor prostředků, nmon , v hostujícím OS použijte příkaz:
sudo vi bootstrap.sh
V tomto souboru zadejte následující:
#!/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
Uložit soubor a ukončete. Dále upravte soubor Vagrantfile a přidejte řádek zřizování. Mělo by to vypadat následovně:
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provision :shell, path: "bootstrap.sh"
end
Když Vagrant čte Vagrantfile, je přesměrován na čtení bootstrap.sh soubor, který jsme právě vytvořili. Tento bootstrap soubor aktualizuje správce balíčků a poté nainstaluje nmon balík. Pokud používáte vagrant up
a vagrant ssh
příkazy, nyní byste měli být schopni spustit nmon pro zobrazení prostředků virtuálního počítače.
Provisioning vám poskytuje výkonný nástroj pro předkonfiguraci vašeho virtuálního prostředí. Totéž můžete udělat s apache2 a vytvořte webový server ve vašem virtuálním prostředí.
Poskytovatelé
Tento tutoriál vám ukáže, jak používat Vagrant s VirtualBoxem. Vagrant však může také spolupracovat s mnoha dalšími poskytovateli backendu.
Chcete-li spustit Vagrant pomocí VMware, spusťte příkaz:
vagrant up –provider=vmware_fusion
Nebo můžete Vagrant spustit pomocí Amazon Web Services s:
vagrant up –provider=aws
Po spuštění počátečního příkazu se následující příkazy použijí na stejného poskytovatele.
Spuštění a připojení
Vagrant Up
Hlavní příkaz pro spuštění vašeho nového virtuálního prostředí je:
vagrant up
Tím se spustí software a rychle se spustí virtuální prostředí Ubuntu. I když je virtuální stroj spuštěný, neuvidíte žádný výstup. Vagrant neposkytuje žádné uživatelské rozhraní.
Vagrant SSH
Ke svému virtuálnímu počítači se můžete připojit (a ověřit, že běží) pomocí připojení SSH:
vagrant ssh
Tím se otevře zabezpečené připojení shellu k novému virtuálnímu počítači. Příkazový řádek se změní na [email protected] k označení, že jste přihlášeni k virtuálnímu počítači.
Jakmile dokončíte průzkum virtuálního počítače, můžete relaci ukončit pomocí CTRL-D . Virtuální počítač bude stále běžet na pozadí, ale připojení SSH bude uzavřeno.
Chcete-li zastavit běh virtuálního počítače, zadejte:
vagrant destroy
Soubor, který jste stáhli, zůstane, ale vše, co běželo uvnitř virtuálního počítače, bude pryč.
Synchronizované složky
Vagrant automaticky synchronizuje obsah, který je ve vašem projektovém adresáři, se speciálním adresářem v hostujícím (virtuálním) systému. Adresář projektu je ten, který jste vytvořili dříve, /vagrant-test . Je to také ten samý, který obsahuje soubor Vagrantfile.
Když se přihlásíte k virtuálnímu počítači, ve výchozím nastavení se spustí v /home/vagrant/ adresář. Jiný adresář, /vagrant/ , obsahuje stejné soubory, které jsou na vašem hostitelském systému.
Můžete použít vagrant up
a vagrant ssh
spustit a přihlásit se k virtuálnímu počítači a poté vytvořit testovací dokument v /vagrant adresář.
Použijte end
zavřete relaci SSH a poté použijte ls
vypsat obsah vašeho adresáře s testem tuláků. Měl by zobrazit testovací soubor, který jste vytvořili.
Toto je praktický způsob, jak spravovat soubory v hostujícím OS, aniž byste museli používat relaci SSH.
Sítě
Vagrant obsahuje možnosti umístění vašeho virtuálního počítače do sítě. Na konci vašeho souboru Vagrantfile, těsně před end
použijte příkaz config.vm.network
příkaz pro zadání síťových nastavení.
Například:
config.vm.network “forwarded_port”, guest: 80, host: 8080
Aby se změny projevily, uložte a znovu načtěte Vagrant příkazem:
vagrant reload
Tím se vytvoří předaný port pro systém hosta. Můžete také definovat soukromé sítě, veřejné sítě a další pokročilejší možnosti.
Vagrant Share
Vagrant má praktickou funkci, kterou můžete použít ke sdílení prostředí Vagrant pomocí vlastní adresy URL.
Se spuštěným prostředím Vagrant použijte následující příkaz:
vagrant share
Systém vytvoří relaci Vagrant Share a poté vygeneruje adresu URL. Tuto adresu URL lze zkopírovat a odeslat jiné osobě. Pokud máte ve své relaci Vagrant nakonfigurovaný Apache, každý, kdo používá tuto adresu URL, uvidí vaši konfigurační stránku Apache. Tato adresa URL se mění, když upravujete obsah sdílené složky.
Relaci sdílení můžete zavřít pomocí CTRL-C .
Další informace naleznete v dokumentaci Sdílení Vagrant.
Clean Up Vagrant
Jakmile dokončíte práci na svém hostujícím systému, máte několik možností, jak relaci ukončit.
1. Chcete-li stroj zastavit a uložit jeho aktuální stav, spusťte:
vagrant suspend
Můžete pokračovat spuštěním vagrant up
znovu. Je to podobné, jako byste uvedli stroj do režimu spánku .
2. Pro vypnutí virtuálního stroje použijte příkaz:
vagrant halt
Opět vagrant up
restartuje stejný virtuální počítač a můžete pokračovat tam, kde jste skončili. Je to podobné jako vypnutí běžný stroj.
3. Chcete-li z vašeho systému odstranit všechny stopy virtuálního počítače, zadejte následující:
vagrant destroy
Vše, co jste uložili do virtuálního počítače, bude odstraněno. Tím se uvolní systémové prostředky používané Vagrantem.
Až se příště vagrant up
, bude nutné stroj znovu dovézt a znovu zajistit. Je to podobné jako formátování pevného disku v systému a poté znovu načtení nového obrázku .