V předchozím článku jsme viděli, jak nastavit vagrant ve vaší distribuci Linuxu. V tomto článku se dozvíte, jak vytvořit projekt Vagrant pro instalaci vagrant boxu, konfiguraci hostujícího počítače a porozumět základním aspektům vagrant a důležitým konfiguracím a příkazům.
Co je Vagrant Box?
Krabice vagrant je formát balíčku pro prostředí tuláků. Když si stáhnete nebo zabalíte virtuální stroj, který chcete použít v vagrant, bude ve formátu krabice. Když řeknu krabice v této sérii mám na mysli pouze virtuální stroj .
Krabice můžete získat dvěma způsoby . Můžete si vytvořit vlastní vlastní krabici a sdílet ji mezi ostatními a používat identické prostředí nebo si krabice stáhnout z vagrantského webu.

Na webu tuláků jsou umístěny krabice, které jsou již zabaleny a připraveny k použití. Na webu můžete hledat různé příchutě krabic (CentOS, Ubuntu, Arch atd..) a také máte možnost vybrat Poskytovatele (zde používáme VirtualBox jako poskytovatel).
Nastavení prostředí projektu Vagrant
Začněme vytvářet projekt a stáhněte si tulákovou krabici. Otevřete terminál a vytvořte adresář projektu spuštěním následujícího příkazu. Tento adresář můžete vytvořit v libovolném umístění ve vašem systému souborů.
$ mkdir ~/vagrant_project
Nyní se přesuňte do nově vytvořeného adresáře a spusťte vagrant init příkaz, který vytvoří v adresáři vašeho projektu tulák konfigurační soubor.
$ vagrant init

Nyní otevřete soubor vagrant, což je soubor šablony vytvořený vagrantem, když spustíte vagrant init příkaz. Tento soubor je místem, kam uložíme všechny konfigurační informace související s krabicí.
$ cat Vagrantfile

Nainstalujte virtuální počítač pomocí Vagrant a VirtualBox
V tuto chvíli vše, o co se musíte starat, je úprava jediného parametru „config.vm.box “. Tento parametr se postará o stažení krabice z vagrantského webu. Chystám se stáhnout Ubuntu20.04 krabice. Na webu vyhledejte „Ubuntu20 “ a nastavte Poskytovatele do Virtualbox jak je znázorněno na obrázku níže.

Klikněte na pole na webu a můžete získat název boxu, který můžete nakonfigurovat v souboru tulák.

Nyní předejte název pole jako argument s vagrant init příkaz, který automaticky nastaví název boxu v souboru Vagrant.
$ vagrant init generic/ubuntu2004 ==> Create a vagrant config file $ vagrant init -m generic/ubuntu2004 ==> Create a vagrant config file without helper and comments $ vagrant init -f generic/ubuntu2004 ==> Override existing vagrant file
Nyní jste nakonfigurovali povinný parametr pro stažení krabice. Nyní spusťte „příkaz vagrant up “, který načte konfigurační soubor Vagrant ke stažení a poskytnutí krabice.
$ vagrant up
Pokud vše půjde dobře, uvidíte výstup, jak je znázorněno na obrázku níže. Je důležité porozumět těmto výstupům, abyste se dozvěděli o konfiguracích vašich virtuálních strojů.

Konfiguruje hostující počítače podle Vagrantfile
Pojďme si rozebrat výstup z tuláků nahoru příkaz.
1. První řádek bude váš Poskytovatel jméno, Virtualbox je výchozí poskytovatel a ukazuje na to.
Bringing machine 'default' up with 'virtualbox' provider...
2. Všechny vaše krabice a soubory související s tulákem budou uloženy pod .vagrant.d
adresář ve vaší domovské složce. Vagrant uvidí, zda pojmenované pole (generic/ubuntu2004 ) je již v tomto adresáři k dispozici pro import krabice, pokud ne, připojí se k vagrantskému webu a stáhne krabici. V tomto případě již mám ubuntu2004 staženo ze stránky tuláků, takže právě importuje krabici.
$ ls -l ~/.vagrant.d/boxes/
3. Když se váš box spustí, zkontroluje aktualizace. Chcete-li to vypnout, můžete ve svém souboru Vagrantfile nastavit následující parametr.
config.vm.box_check_update = false

4. Ve výchozím nastavení bude síťový režim vašeho virtuálního počítače nastaven na NAT a bude povoleno přesměrování portů na SSH z Hostitele stroj. Toto je konfigurovatelné a máme možnosti pro výběr různých síťových režimů.

5. Každý box má k dispozici pouze dva uživatele. Jedním z nich je kořen a druhý je tulák uživatel. Výchozí uživatelské jméno a heslo jsou vágantní .
Ověřování na základě hesla je ve výchozím nastavení vypnuto a automaticky se vygeneruje pár veřejného a soukromého klíče, který se během spouštění zkopíruje na váš virtuální počítač a použije se k připojení k vašemu boxu.
Username = vagrant Password = vagrant

Chcete-li zkontrolovat konfiguraci ssh pro pole, můžete spustit následující příkaz. Z obrázku níže můžete ověřit, že je ověřování heslem vypnuto a uživatel je nastaven na vagrant a přesměrování portů je nastaveno na 2222 .
$ vagrant ssh-config

6. Některé boxy se pokusí připojit sdílenou složku k vašemu VM. Aby sdílená složka fungovala, potřebujete na vašem virtuálním počítači nainstalované doplňky hosta. Váš aktuální adresář (adresář projektu) z místního počítače bude připojen pomocí /vagrant ve vzdáleném počítači.
Ze všech výše uvedených kroků byste nyní mohli mít představu, co tulák dělá. O všechny tyto kroky se postaráme my, když ručně nastavujeme VM ve virtualboxu. Zde se vagrant stará o všechny tyto kroky automatizovaným způsobem.
Nyní můžete mít spuštěný jeden nebo více virtuálních počítačů a ke kontrole stavu spusťte následující příkaz. Název, poskytovatele, stav, id a informace o adresáři všech tuláků ve vašem počítači můžete získat pomocí:
$ vagrant global-status --prune

Nyní, když už do značné míry rozumíte tomu, co tulák dělá. V příštím článku uvidíme důležité příkazy tuláků a jak se spojit s krabicí a pracovat na ní.