Menu
Jest wolny
rejestracja
Dom  /  Instalacja i konfiguracja/ Obrazy włóczęgi. Przedstawiamy Narzędzie Włóczęgi

Włóczęgiczne obrazy. Przedstawiamy Narzędzie Włóczęgi

Tak więc ostatnim razem przyjrzałem się, czym jest Vagrant i jak może nam się przydać. Jednak dla tych, którzy nigdy z nim nie pracowali, wszystkie te polecenia, jakiś plik konfiguracyjny... Krótko mówiąc, wszystko to będzie wydawać się herezją. Dlatego oprócz poprzedniego wpisu na Vagrancie chciałbym dodać kilka uwag, wyjaśnić poszczególne kwestie.

Ważne jest, aby zrozumieć, że ten artykuł NIE zastępuje wyłączonej dokumentacji. Vagrant, jak każdy inny projekt, jest w fazie rozwoju, dlatego prezentowane tu informacje mogą nie być aktualne za miesiąc. Na przykład przy przejściu z wersji 1.4 na 1.5 zmienili składnię wielu poleceń (jak to samo pole dodawania włóczęgów), więc przede wszystkim uzyskaj najnowsze informacje stąd, wyjaśnię tylko kilka szczegółów.

Pudła

To szablony do budowania stoisk. Podstawowe informacje w d Podam suchą ekspozycję do pracy i lekko podniosę maskę swojego urządzenia)

Tak więc jest pudełko - jest to specjalny pakiet dla Vagranta, który wciąga do siebie już przygotowaną km (zainstalowaną i wstępnie skonfigurowaną) instancję maszyny wirtualnej. Jak pisałem wcześniej, głównym repozytorium skrzynek jest zasób w chmurze włóczęgów twórców: https://app.vagrantup.com/boxes/search. Muszę powiedzieć kilka słów o przestrzeniach nazw w chmurze Vagrant. Zazwyczaj nazwa pudełka ma postać "przestrzeń nazw / nazwa pudełka", gdzie druga część to nazwa pudełka, która zazwyczaj mówi nam, czym jest montaż (np. trusty64 - 64 bit Ubuntu 14.04), a pierwsza część to kto zamieścił zbiór. Na przykład:

  • hashicorp - montaże od twórców Vagrant
  • ubuntu - zestawy skrzynek firmy Canonical z własnym systemem operacyjnym

W ten sposób możemy używać boksu z Ubuntu zarówno od jego twórców, jak i od deweloperów Vagrant. Jaka jest więc różnica? Otóż ​​przede wszystkim „świeżość” obrazu. Kolumna po prawej stronie pokazuje, jak dawno zdjęcie zostało wydane / zaktualizowane. Po drugie, środkowa kolumna zawiera informacje o tym, do jakich narzędzi wirtualizacji jest odpowiednie to pudełko (Virtualbox, vmware, aws itp.)

Aby to zmyć, twórcy vagrant zalecają zwrócenie uwagi na pudełka z projektu Bento. Mówią, że pudełka hashicorp są robione z naciskiem na VMware i VirtualBox, zawierają najbardziej minimalne obrazy tego samego Ubuntu, a w Bento można znaleźć na przykład pudełka dla Paraleli. Krótko mówiąc, różnorodność nie boli.

Głównym narzędziem do pracy z pudłami (bębny) jest narzędzie włóczęgi!

Jakie są jego opcje, które musimy najpierw opanować:

  • vagrant box add - dodaj box do lokalnej listy dostępnych szablonów. W rzeczywistości określone pudełko jest pobierane na twój komputer, po czym jest dostępne do użytku.
  • lista włóczęgów - zobacz listę wszystkich pudełek na twoim komputerze, w tym informacje o ich wersji
  • włóczęga usuń pudełko - usuń pudełko
  • aktualizacja vagrant box - aktualizacja box

Każde polecenie ma swój własny zestaw opcji, które można wyświetlić w dokumentacji online lub za pomocą opcji -h w samym poleceniu

Spójrzmy na przykład - chcę wiedzieć ile i jakie mam zdjęcia, a jednocześnie posprzątać stare/niepotrzebne itp. Dopiero co powiedziałem, niż zrobiłem:

Wydałem więc polecenie aktualizacji wszystkich posiadanych przeze mnie skrzynek, po czym opcja Lixt pokazała, że ​​nadeszła aktualizacja dla Xenial64. Nie chcę zachować starego pudełka, więc wydaję polecenie usunięcia go. Skasowanie się nie udaje bo mam dwa boxy o tej nazwie i program prosi o wyjaśnienie, którą wersję boxa chcę usunąć. Wtedy wszystko dzieje się tak, jak powinno. Istnieje również polecenie włóczęgiego przycinania skrzynek, aby usunąć stare obrazy.

Dodanie obrazka jest dość proste - wydajesz komendę dodawania vagrant box, określając nazwę pudełka wraz z przestrzenią nazw jako parametr lub (jeśli pudełko nie jest rozłożone w chmurze Vagrant) - url do jego lokalizacji:

Byłoby miło wiedzieć, czym naprawdę są te pudełka. Spójrzmy!

W systemie Linux (w szczególności Ubuntu) w twoim katalogu domowym tworzony jest ukryty katalog „.vagrant.d /”, w którym przechowywane są pudełka:

Co tam widzimy:

  1. box.ovf - informacja o konfiguracji VM, wgrywana (np. za pomocą Virtualbox podczas tworzenia-eksportu), w tzw. Otwórz format wirtualizacji.
  2. * name * .vmdk - plik dyskowy zawierający obraz zainstalowanego systemu operacyjnego w formacie vmware.
  3. metadata.json to plik JSON zawierający opis dostawcy wirtualizacji, dla którego przeznaczone jest to pole. Najprawdopodobniej jego treścią będzie: („Dostawca”: „skrzynka wirtualna”) co mówi, że pudełko jest tworzone tylko do użytku z Virtualbox
  4. Vagrantfile - plik włóczęgi z podstawowym opisem środowiska tworzonego podczas wdrażania boxa.

To wszystko z podstawami boksu, jeśli pojawi się coś innego, postaram się zaktualizować ten dział artykułu.

Włóczęga

Tak więc ten plik jest centralną częścią całej infrastruktury, pracy z Vagrantem. Zasadniczo „projekt w Vagrant” = Vagrntfile i odwrotnie, Vagrntfile = „projekt w Vagrant”. Plik zawiera szczegółowy (tyle ile potrzebujesz) opis maszyn wirtualnych użytych w Twoim projekcie. Tak, tak, jak widzieliśmy ostatnio, plik Vagrantfile może zawierać więcej niż jeden opis maszyny wirtualnej. Podstawowe informacje o. Ponownie skupię się na głównych punktach.

Nikt nie przeszkadza ci w ręcznym tworzeniu tego pliku. Jednak do tego celu służy komenda vagrant ini t, która po uruchomieniu w katalogu przeznaczonym dla projektu utworzy plik Vagrant z pewną standardową zawartością i przykładami użycia, na przykład:

Jeśli usuniesz plik z komentarzy, otrzymasz coś takiego:

W rzeczywistości bardzo minimalistyczny przedmiot. Jeśli użyjemy vagrant init ubuntu/xenial64, czyli określając pole docelowe, otrzymamy następującą treść:

Treść nie różni się zbytnio, ale widzimy, że została wybrana do użycia określonego szablonu pudełka. Cały zestaw dostępnych opcji konfiguracji vagrantfile można znaleźć w odpowiedniej sekcji dokumentacji. Przeanalizuję zademonstrowany wcześniej przykład. Jeszcze raz podam jako próbkę, żebym później mógł ją rozebrać punkt po punkcie:

Weźmy teraz za podstawę pierwszą część pliku konfiguracyjnego. Wizualnie podzieliłem go na 4 sekcje kolorystyczne - czerwony, pomarańczowy, zielony i niebieski:

Każda sekcja zaczyna się od parametru config.* Słowo kluczowe, a kończy słowem kluczowym end. Karty są opcjonalne, ale używam ich, aby ułatwić zrozumienie struktury plików.

W czerwonym podświetlony tytuł "globalny" - są to opcje, które dotyczą całego projektu. Jeśli chcesz, każdy z nich może zostać nadpisany na poziomie konfiguracji konkretnej maszyny wirtualnej. Na przykład możesz ustawić, że domyślnym polem jest serwer Ubuntu (jak również tutaj - jest to wskazane) config.vm.box = "ubuntu / xenial64"), ale na niektórych maszynach chcesz Centos, redhat lub Debian. Wtedy maszyny wirtualne, które nie mają nic określonego w opcji config.vm.box, użyją ubuntu / xenial64, a maszyny wirtualne, które mają własną opcję dla używanego pudełka, użyją czegoś innego.

Dalej, Pomarańczowy podświetlona jest sekcja odpowiedzialna za identyfikację maszyny wirtualnej - tj. ustawienie nazwy wyświetlanej (nazwy hosta w ustawieniach systemu operacyjnego - w tym przypadku) * .vm.hostname = "serwer WWW"), typ i adres karty sieciowej, nazwę używanego boxa (jeśli nie chcemy korzystać z wcześniej zdefiniowanego w kontekście globalnym).

W zielonym podświetlona jest sekcja odpowiedzialna za konfigurację wirtualnego dostawcy - jego typ, nazwa, która będzie wyświetlana w jego interfejsie, liczba rdzeni i ilość pamięci VM RAM.

I w końcu w niebieskim sekcja poleceń wykonywanych na początku systemu gościa jest podświetlona. Z tz. struktury pliku Vagrant, składa się z jednej opcji i należy do sekcji pomarańczowej, ale ma znaczenie ideologiczne. Postanowiłem podkreślić to osobno. Vagrant może sam, podczas tworzenia i uruchamiania maszyny wirtualnej, wykonywać szereg arbitralnych poleceń, automatyzując w ten sposób twoje działania na początkowej konfiguracji maszyny, usuwając z ciebie rutynowe zadania. Wszystko pomiędzy słowami kluczowymi SHELL zostanie wykonane jako root w wierszu poleceń systemu gościa.

Montaż folderów i dostęp SSH

Dzięki tej automatyzacji wdrażania maszyn wirtualnych korzyści płynące z Vagrant nie kończą się na tym! Po pierwsze, po utworzeniu maszyny wirtualnej za pomocą polecenia vagrant up, możesz automatycznie połączyć się z nią przez ssh z głównej maszyny za pomocą polecenia vagrant ssh * nazwa machive * - bez adresów, loginów, haseł! Co więcej, uruchomienie powłoki jako root odbywa się również bez potwierdzenia hasła (tak naprawdę nie ma tu żadnej magii, Vagrant po prostu przygotowuje autoryzację za pomocą kluczy ssh).

Kolejnym miłym niuansem (zarówno dla programisty, jak i administratora) jest fakt, że po uruchomieniu maszyny wirtualnej folder projektu jest automatycznie montowany do katalogu / vargrant / (w katalogu głównym systemu operacyjnego gościa). Tak więc, jeśli chcesz sprawdzić swój kod lub skrypty, nie musisz ich edytować na swoim komputerze, a następnie przenieść je na VM i tam je uruchomić - wystarczy umieścić je w folderze projektu, a od razu pojawią się w systemie plików przestrzeń systemu operacyjnego gościa. Jednocześnie możesz łatwo i wygodnie kontynuować pracę z nimi z głównego systemu operacyjnego. Więcej o możliwości łączenia katalogów (na przykład łączenia innego katalogu lub kilku na raz) można przeczytać także w dokumentacji Vagranta.

To wszystko na dzisiaj, czekam na Twoje pytania!

Otagowano,

Jest programem pomocniczym do budowania i zarządzania maszynami wirtualnymi. Z jego pomocą możesz zautomatyzować proces wdrażania niestandardowych (z ustawieniami użytkownika) maszyn wirtualnych.

Istotą pracy Vagranta jest to, że za pomocą plików konfiguracyjnych napisanych specjalnie dla tego programu zbiera maszyny wirtualne, w których zostały już zastosowane określone ustawienia. Autorzy niektórych systemów rozpowszechniają je w postaci takiego pliku konfiguracyjnego Vagrant, a otrzymawszy ten plik, możemy zbudować ten system operacyjny na naszym komputerze. Możemy użyć domyślnych konfiguracji lub dokonać w nich zmian. Rezultatem będzie system operacyjny od autora, ale z pewnym dostrojeniem.

Jak zainstalować Vagranta na Linuksie

Ponieważ Vagrant jest tylko dodatkiem do VirtualBox, musisz zacząć od zainstalowania VirtualBox.

Teraz, gdy VirtualBox jest już w twoim systemie, poszukaj włóczęgi w standardowych repozytoriach w twoim systemie - najprawdopodobniej już tam jest.

Aby zainstalować na Ubuntu, Linux Mint, Debian, Kali Linux i ich pochodnych, uruchom polecenie

Sudo apt install włóczęga

Aby zainstalować na Arch Linux, BlackArch i ich pochodnych, uruchom polecenie:

Sudo pacman -S włóczęga

Jak zainstalować Vagranta w systemie Windows

Istnieje również graficzny instalator Vagranta w systemie Windows, pobierz i zainstaluj.

Vagrant nie wybiera C: \ Program Files \ jako folder instalacyjny, ale inny folder, co ułatwia pracę programu z uprawnieniami i prawami dostępu:

Po ponownym uruchomieniu otwórz wiersz poleceń systemu Windows. Można to zrobić, klikając Wygraj + X, w oknie, które się otworzy, wybierz Windows PowerShell (administrator)... W oknie, które się otworzy, aby przejść z PowerShell do wiersza poleceń, wpisz

W tej konsoli uruchom polecenie:

Powinna pojawić się standardowa pomoc dotycząca obsługi programu:

Jeśli wystąpi błąd lub tylko w celu zapobiegania, zaktualizuj wtyczki:

Aktualizacja wtyczki Vagrant

Instalowanie wtyczki vagrant-vbguest

vagrant-vbguest to wtyczka Vagrant, która automatycznie instaluje dodatki dla gości VirtualBox dla gości - Dodatki dla gości VirtualBox.

Niezależnie od systemu operacyjnego, wtyczkę należy zainstalować w ten sam sposób za pomocą następującego polecenia:

Zainstaluj wtyczkę Vagrant vagrant-vbguest

Jeśli w systemie Windows masz problemy z instalacją tej wtyczki, wypróbuj następujące polecenie:

C: \ vagrant \ vagrant \ osadzone \ bin \ gem.bat zainstaluj vagrant-vbguest

Również w systemie Windows zapora może poprosić program o pozwolenie na dostęp do sieci:

Wtyczka vagrant-vbguest działa i jest domyślnie używana przez wszystkie maszyny wirtualne. Uruchamia się automatycznie natychmiast po uruchomieniu pudełka (jak nazywa się maszyny wirtualne w Vagrant). Okazuje się, że działa to za każdym razem, gdy pudełko jest ładowane, czyli podczas używania poleceń włóczęga w górę lub włóczęga przeładować... Nie będzie działać z poleceniem włóczęga CV(lub włóczyć się po zawieszonym pudełku), aby uniknąć marnowania czasu po wznowieniu działania maszyny wirtualnej.

Aby wyłączyć tę wtyczkę, w ustawieniach maszyn wirtualnych ustaw vbguest.auto_update na fałszywe.

Jak korzystać z Vagranta

Vagrant buduje maszyny wirtualne z pliku konfiguracyjnego Włóczęga... Możesz tworzyć i wykorzystywać własne warianty do szybkiego wdrożenia lub instalować różne systemy operacyjne przygotowane przez innych. Zawarta jest w niej duża kolekcja, tam możesz wybrać interesujące Cię pudełko i złożyć, a następnie uruchomić je za pomocą polecenia formularza:

Na przykład, obraźliwe-bezpieczeństwo przygotowany kali-linux-light,

następnie instalacja i uruchomienie odbywa się za pomocą poleceń:

Włóczęga init ofensywa-bezpieczeństwo / kali-linux-light włóczęga w górę

Przykłady innych popularnych systemów:

W przypadku różnych systemów wybierz oddzielne foldery, czyli uruchom powyższe polecenia w różnych folderach.

Vagrant może nie tylko pobierać i uruchamiać pudełka, ale także uruchamiać w nich niestandardowe skrypty - więc niektóre systemy mogą być trudniejsze do zainstalowania niż pokazano tutaj. Mogą wymagać pobrania pełnego archiwum. Następnie musisz przejść do folderu zawierającego plik Włóczęga i już tam biegnij włóczęga w górę.

Gospodarstwo rolne- jest to specjalnie przygotowane przez programistów Laravel obraz Ubuntu Linux, który zawiera wszystkie niezbędne narzędzia do tworzenia aplikacji na tym wspaniałym frameworku. W oficjalnej dokumentacji Laravel proces instalacji Gospodarstwo rolne opisane dość dobrze, ale nadal zawiera pewne luki. Postaram się je wypełnić w tym artykule.

Więc zacznijmy. Pierwszym krokiem jest instalacja Wirtualna skrzynka oraz Włóczęga.

Ostatnia wersja Wirtualna skrzynka można pobrać z https://www.virtualbox.org/wiki/Downloads. Podczas instalacji możesz pozostawić wszystkie ustawienia domyślne.

Instalator Włóczęga pobierz go na https://www.vagrantup.com/downloads.html. Domyślnie program jest instalowany w katalogu głównym dysku C: \, do folderu HashiCorp \ Włóczęga \... Wolę zmienić tę ścieżkę na C: \ Pliki programów (x86) \ HashiCorp \ Vagrant \... Po instalacji Włóczęga konieczne będzie ponowne uruchomienie komputera.

Teraz musimy dodać skrzynkę laravel / homestead do Włóczęga... Otwieranie wiersza poleceń Okna jako administrator (skrót klawiaturowy Wygraj + R następnie polecenie cmd w oknie Wykonać ) i wykonaj następujące polecenie:

Pudełko włóczęgi dodaj laravel / gospodarstwo domowe

W konsoli zobaczysz coś takiego:

Proces pobierania zajmie trochę czasu, w zależności od szybkości połączenia internetowego.

Ustawić Gospodarstwo rolne będzie z pomocą Gita... Możesz pobrać jego najnowszą wersję ze strony https://git-scm.com/downloads. Wszystkie ustawienia można domyślnie pozostawić podczas instalacji. Aby udostępnić polecenie git w konsoli Okna, konieczne będzie również ponowne uruchomienie komputera.

Teraz musisz sklonować repozytorium Gospodarstwo CLI do dowolnego katalogu, takiego jak folder domowy. Aby to zrobić, uruchom konsolę Okna jako administrator i uruchom następujące polecenie:

Klon Git https://github.com/laravel/homestead.git Homestead

Na ekranie zobaczysz:


Spowoduje to utworzenie folderu w twoim katalogu domowym Gospodarstwo rolne... Przejdź do niego i uruchom plik init.bat, utworzy plik konfiguracyjny Homestead.yaml w folderze .gospodarstwo rolne w twoim katalogu domowym.


Teraz utwórzmy klucze SSH, aby uzyskać dostęp do naszej maszyny wirtualnej. Aby to zrobić, musisz otworzyć terminal Gita(na przykład, klikając prawym przyciskiem myszy na ekranie i wybierając Git bash tutaj ) i uruchom następujące polecenie:

Ssh-keygen -t rsa –C "[Twój e-mail]"

Gdy zostaniesz poproszony o podanie ścieżki do katalogu, aby zapisać plik klucza, po prostu naciśnij Wejść , w tym przypadku zostanie wybrana domyślna wartość podana w nawiasach (folder zostanie utworzony w katalogu domowym) .ssh, gdzie zostaną umieszczone pliki kluczy). Będziesz także musiał wprowadzić i potwierdzić hasło do kluczy.


Do Włóczęga Użyłem dokładnie tych kluczy i nie tworzyłem nowych plików kluczy przy każdym uruchomieniu ze względu na ustawienia bezpieczeństwa, musisz dodać następujący wiersz do pliku Włóczęga w folderze Gospodarstwo rolne:

Config.ssh.insert_key = fałsz

Po tym powinno wyglądać mniej więcej tak:

# - * - tryb: ruby ​​​​- * - # vi: set ft = ruby: require "json" require "yaml" VAGRANTFILE_API_VERSION = "2" confDir = $ confDir || = File.expand_path ("~ / .homestead" ) homesteadYamlPath = confDir + "/Homestead.yaml" homesteadJsonPath = confDir + "/Homestead.json" afterScriptPath = confDir + "/after.sh" aliasesPath = confDir + "/ aliases" wymagają File.expand_path (File.dirname (__ FILE__) ) + " /scripts/homestead.rb ") Vagrant.require_version"> = 1.8.4 "Vagrant.configure (VAGRANTFILE_API_VERSION) do | config | config.ssh.insert_key = false jeśli plik.istnieje? aliasesPath następnie config.vm.provision "plik", źródło: aliasesPath, miejsce docelowe: "~ / .bash_aliases" end if File.exist? homesteadYamlPath then settings = YAML :: load (File.read (homesteadYamlPath)) elsif File.exist? homesteadJsonPath then settings = JSON.parse (File.read (homesteadJsonPath)) end Homestead.configure (config, settings) if File.exist? afterScriptPath następnie config.vm.provision "shell", ścieżka: afterScriptPath, uprzywilejowany: false end jeśli zdefiniowano? VagrantPlugins :: HostsUpdater config.hostsupdater.aliases = ustawienia ["witryny"]. Mapa (| strona | strona ["mapa"]) koniec koniec

Wszystko jest już prawie gotowe do uruchomienia, niewiele zostało.

Najpierw otwórzmy plik Homestead.yaml(pamiętaj, że jest w folderze .gospodarstwo rolne w naszym katalogu domowym). Oto jego zawartość:

Ip: "192.168.10.10" pamięć: 2048 cpus: 1 provider: virtualbox autoryzacja: ~ / .ssh / id_rsa.pub klucze: - ~ / .ssh / id_rsa foldery: - map: ~ / kod do: / home / vagrant / Witryny kodowe: - mapa: homestead.app do: / home / vagrant / Code / Laravel / publiczne bazy danych: - homestead # blackfire: # - id: foo # token: bar # identyfikator-klienta: foo # token-klienta: bar # porty: # - wyślij: 50000 # do: 5000 # - wyślij: 7777 # do: 777 # protokół: udp

Zawiera ustawienia maszyny wirtualnej. W zasadzie wszystkie są całkiem sprawne, wystarczy wprowadzić niewielkie zmiany w naszym systemie operacyjnym. Przede wszystkim utwórzmy folder Kod w naszym katalogu domowym. Dzięki temu folderowi będziemy mogli pracować z witryną, która będzie dostępna pod adresem http://homestead.app. Aby móc uzyskać dostęp do tej witryny z przeglądarki, dodaj następujący wiersz do pliku zastępy niebieskie znajduje się w katalogu C: \ Windows \ System32 \ sterowniki \ etc \:

192.168.10.10 homestead.app

Klucze SSH zostały już utworzone i znajdują się we właściwym katalogu.

Wszystko gotowe do uruchomienia systemu. Przejdź do katalogu z zainstalowanym Gospodarstwo rolne, otwórz terminal i biegnij włóczęgą.





Gratulacje! Uruchomiliśmy maszynę wirtualną Gospodarstwo rolne... Możesz sprawdzić jej status za pomocą polecenia vagrant status, aby zatrzymać maszynę wirtualną, użyj polecenia vagrant halt.

Po otwarciu strony http://hometead.app zobaczysz następujące informacje:


Oznacza to po prostu, że w katalogu roboczym witryny określonym w pliku Homestead.yaml, nie ma jeszcze plików. Można to łatwo naprawić, dodając pliki witryny do folderu Kod \ Laravel \ publiczny \(ta konfiguracja jest bardzo wygodna w instalacji) Laravel: kopiując dystrybucję do folderu Laravel uzyskujemy dostęp do folderu publiczny przez przeglądarkę same pliki silnika pozostają niedostępne z zewnątrz).

Pozostaje skonfigurować dostęp do maszyny wirtualnej przez SSH.

Pobieranie klienta SSH Kit na http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Proponuję pobrać archiwum ZIP i rozpakować je do folderu Kit w twoim katalogu domowym. Uruchom plik SZPACHL.exe... Możesz połączyć się z następującymi parametrami:

  • Login: włóczęga
  • Hasło: włóczęga
  • Adres serwera: 127.0.0.1
  • Port: 2222

Wprowadź wszystkie te parametry (oprócz hasła) w oknie Konfiguracja PuTTY i naciśnij przycisk otwarty .


Wprowadź hasło w oknie terminala (hasło nie jest wyświetlane podczas wpisywania i może wydawać się, że terminal jest zawieszony, ale tak nie jest) i naciśnij Wejść ... Po tym będziesz mógł pracować z maszyną wirtualną przez SSH.


Możesz zautomatyzować proces połączenia, eliminując konieczność każdorazowego wprowadzania wszystkich danych i hasła. Dane połączenia zapiszemy w Kit, do połączenia użyjemy wygenerowanego wcześniej klucza SSH.

Problemem jest Kit używa własnego formatu klucza prywatnego dla połączeń. Na szczęście zawiera narzędzie do konwersji standardowych plików kluczy. Biegać PUTTYGEN.EXE, naciśnij przycisk Obciążenie i wybierz poprzednio wygenerowany za pomocą Gita plik klucza prywatnego id_rsa(aby móc wybrać, ustaw tryb wyświetlania, aby pokazać wszystkie pliki w rozwijanym menu po prawej stronie pola Nazwa pliku ).



Po wybraniu będziesz musiał wprowadzić hasło, którego użyłeś do wygenerowania klucza. Plik klucza zostanie załadowany i przekonwertowany do formatu Kit... Wyczyść pola Kluczowe hasło oraz Potwierdź hasło połączyć później bez hasła.


Teraz naciśnij przycisk Zapisz klucz prywatny i zapisz klucz w tym samym folderze pod nazwą id_rsa.ppk, po uprzedniej zgodzie na utworzenie klucza bez hasła.

Otwórz ponownie SZPACHL.EXE... W rozdziale Sesja wprowadź ustawienia połączenia tak jak poprzednio. Następnie przejdź do sekcji Połączenie →SSH →Uwierzytelnianie , naciśnij przycisk Przeglądaj i wybierz wcześniej wygenerowany plik klucza prywatnego.


Wróć do sekcji Sesja i zapisz konfigurację. Do tego w terenie Zapisane sesje wprowadź dowolną nazwę konfiguracji (na przykład Homestead) i kliknij przycisk Zapisać .


Aby się połączyć, kliknij dwukrotnie nazwę zapisanej konfiguracji na liście.


Na tym kończy się konfiguracja środowiska pracy. Gospodarstwo rolne można uznać za kompletne.

W ostatnim czasie stale rośnie liczba narzędzi programistycznych: Ansible, Otto, Vagrant, Nomad, Consul, Puppet, Chef… Co to wszystko? Aby nieco wyjaśnić sytuację, dziś chciałbym opowiedzieć o tak wspaniałym narzędziu, jakim jest Vagrant, z którego sam korzystam prawie codziennie.

Co to jest Włóczęga?

Vagrant to narzędzie, które pozwala ujednolicić środowisko programistyczne i środowisko, w którym ten kod będzie wdrażany za pomocą technologii wirtualizacji. Mówiąc najprościej, jeśli tak jak ja jesteś fanem tworzenia projektów w środowisku Windows, ale w przyszłości wdrażaj je na maszynach *nix, to Vagrant Ci pomoże :-) Bardzo często problemy pojawiają się na tle tego, że środowisko programistyczne znacznie różni się od środowiska, w którym wiruje ostateczna aplikacja. Na przykład w systemie Windows nazwa folderu z wielką i małą literą jest taka sama, chociaż w systemach uniksowych są to dwa różne foldery.

Z lotu ptaka Vagrant to nic innego jak CLI (interfejs wiersza poleceń) dla VirtualBox z blackjackiem i Vagrantfile.

Jako demo stworzymy izolowany system operacyjny oparty na Ubuntu 14.04.3 LTS z wirtualnym środowiskiem Python + uruchomioną aplikacją Django w środku.

Terminologia

  • Wirtualny system operacyjny- izolowany system operacyjny działający wewnątrz programu emulującego
  • Program emulatora- program wykorzystujący sprzętową wirtualizację procesora komputera (np. VirtualBox, VMWare, Parallels Desktop itp.) do tworzenia izolowanych wirtualnych systemów operacyjnych wewnątrz 1 fizycznej maszyny
  • - program owijający wokół programu emulatora "z bułeczkami"
  • - plik opisujący charakterystykę i zachowanie przyszłego wirtualnego systemu operacyjnego w języku programowania Ruby

Instalacja

Cały proces instalacji i konfiguracji odbędzie się w środowisku Windows. Aby zainstalować Vagrant, musisz wykonać następujące kroki:

  • Pobierz najnowszą wersję Vagrant dla Windows z oficjalnej strony internetowej i zainstaluj.
  • Pobierz VirtualBox dla Windows z oficjalnej strony internetowej i zainstaluj.

Podczas instalacji Vagrant i VirtualBox nie powinno być żadnych problemów, dzięki czemu można od razu przejść do następnej pozycji - konfiguracji.

Dostosowywanie

Po zainstalowaniu Vagrant i VirtualBox wskazane jest ponowne uruchomienie komputera. Jeśli wszystko poszło gładko, możesz zacząć uruchamiać pierwszą maszynę wirtualną.

Aby to zrobić, wprowadź następujące polecenia:

Mkdir vagrant_demo && cd vagrant_demo vagrant init ubuntu / trusty64

Dlatego stworzyliśmy plik Vagrantfile, w którym ustawione są ustawienia domyślne, a mianowicie:

  • Ubuntu 14.04 jest używany jako zestaw dystrybucyjny
  • Port 22 maszyny gościa (wirtualnej) jest przekazywany do portu 2222 maszyny hosta
  • Aktualny katalog / Vagrant_demo jest przekazywany do katalogu / vagrant maszyny wirtualnej
  • System gościa ma przydzielone 512 MB pamięci RAM i 40 GB dysku twardego

Treść to nic innego jak kod Rubiego, który definiuje pewne cechy i zachowanie.

ubuntu / trusty64 to kryptonim skrzynki włóczęgi, tj. gotowy obraz systemu. Wszystkie obrazy tzw pudła włóczęgów może być znaleziony.

Aby uruchomić maszynę wirtualną, musisz uruchomić:

Poniżej znajduje się zrzut ekranu z procesu pobierania pudełka i jego późniejszej instalacji

Po pomyślnym pobraniu i konfiguracji wystarczy uruchomić polecenie

Ale w standardowym systemie Windows nie ma narzędzia ssh, więc możesz otrzymać następujący komunikat o błędzie:

Nie znaleziono pliku wykonywalnego `ssh` w żadnych katalogach w zmiennej% PATH%. jest
Zainstalowany klient SSH? Spróbuj zainstalować Cygwin, MinGW lub Git, z których wszystkie
zawierają klienta SSH. Lub użyj swojego ulubionego klienta SSH z następującymi
informacje uwierzytelniające pokazane poniżej:

Ale nie denerwuj się, po prostu zainstaluj pakiet narzędziowy Cygwin i wpisz ścieżkę do plików binarnych w zmiennej PATH.

Po pomyślnym wykonaniu polecenia pojawi się okno z powłoką:

Gratulacje! Pierwszy etap został zakończony. Aby odłączyć maszynę wirtualną, musisz uruchomić polecenie z maszyny hosta:

Włóczęga zatrzymaj się

Lista podstawowych poleceń:

  • włóczęga zatrzymać się- zatrzymuje maszynę wirtualną
  • włóczęga niszczyć- usuwa maszynę wirtualną
  • włóczęga zawiesić- "zawiesza" maszynę wirtualną
  • włóczęga o globalnym statusie- wyświetla listę wszystkich wcześniej utworzonych maszyn wirtualnych w systemie hosta
  • - łączy się z maszyną wirtualną przez SSH

Przykład demo z Vagrantem podnoszącym osobną maszynę wirtualną z wirtualnym środowiskiem Python na pokładzie, a także aplikacją Django można znaleźć pod adresem

Preambuła

Ten mini-artykuł jest odniesieniem do tworzenia lepszego środowiska programistycznego.

We współczesnym świecie programowania WEB programiści już dawno przestali instalować środowisko programistyczne: PHP, serwer WEB, DBMS itp. do lokalnego komputera, na którym programujesz.

Po pierwsze, instalacja i konfiguracja wymagają cennego czasu i wysiłku.

Po drugie, jeśli programista pracuje na kilku komputerach (komputer w biurze, w domu, laptop), to dość problematyczne jest skonfigurowanie wszędzie identycznego środowiska i zsynchronizowanie jego ustawień między wszystkimi swoimi komputerami. Problem ten nazywany jest problemem tożsamości, gdy zakłada się, że skład, wersja i konfiguracja całego oprogramowania powinny być jak najbardziej identyczne.

Po trzecie, jeśli nie jesteś pojedynczym programistą, utrzymanie tego samego środowiska na wszystkich komputerach i wszystkich komputerach współpracowników jest jeszcze trudniejsze. Tutaj utrzymanie identycznego stanu jest jeszcze trudniejsze, ponieważ prawie nic nie zależy od Ciebie.

Po czwarte, stan środowiska komputera roboczego najprawdopodobniej nie pasuje i nie może się pokrywać ze stanem środowiska serwera produkcyjnego (produkcyjnego). W końcu masz Windowsa ze wszystkimi jego dziwactwami konfiguracyjnymi, ale coś jest zdecydowanie innego na serwerze produkcyjnym.

Ostatecznie, jeśli nadal będziesz instalować środowisko programistyczne na lokalnym komputerze, złapiesz się na myśleniu, że połowę czasu pracy poświęcasz na synchronizację ustawień środowiska, a stan lokalnego systemu operacyjnego bardzo szybko zamieni się w zrzut .

Wirtualizacja środowiska programistycznego pomoże Ci uniknąć tego chaosu. Potrzebujesz maszyny wirtualnej, którą można wdrożyć zgodnie z określonym scenariuszem, aby można ją było wdrożyć jednym kliknięciem na dowolnym komputerze w dowolnym systemie operacyjnym. Gdy pijesz kawę, Twoja maszyna wirtualna będzie gotowa. Potrzebujesz również narzędzi do szybkiego i łatwego zarządzania taką maszyną wirtualną (uruchamianie, zatrzymywanie, rekonfiguracja).

Potrzebny jest również katalog roboczy z projektem, który ma być odzwierciedlony w katalogu wewnątrz maszyny wirtualnej. Na przykład, aby lokalny katalog maszyny D: \ myProjects, w którym przechowywane są twoje projekty, odpowiadał katalogowi maszyny wirtualnej / var / myProjects lub podobnemu.

Chciałbym też mieć możliwość pełnego debugowania za pomocą PHP-Xdebug, a aplikacja musi być uruchomiona w środowisku wirtualnym, na maszynie wirtualnej, a można by nią zarządzać z lokalnej. Czy już to lubisz? Pójść dalej!

Włóczęga

Wszystko to i wiele więcej można osiągnąć dzięki wirtualizacji za pomocą Vagranta. Wiele napisano o Vagrancie w Internecie. Nie ma sensu tutaj powielać, inaczej artykuł nie będzie mini, jak obiecano na początku, ale maxi.

Powiem tylko kilka słów. Vagrant to specjalny zestaw skryptów, które współpracują z hipernadzorcami (maszynami wirtualnymi), takimi jak vmWare, VirtualBox, Parallels i innymi, aby ułatwić interakcję z tymi maszynami wirtualnymi.

W przypadku Vagranta istnieją gotowe obrazy systemu operacyjnego zwane pudełkami. Pudełko to tak naprawdę tylko obraz już zainstalowanego i skonfigurowanego systemu operacyjnego, na podstawie którego budowana jest maszyna wirtualna. Często autorzy pudeł zbierają je w celu wsparcia w różnych hipernadzorcach (aplikacjach do pracy z maszynami wirtualnymi). Podoba mi się hypervisor VirtualBox, ponieważ zacząłem pracować z Vagrantem nawet wtedy, gdy był on tylko obsługiwany, a mimo to większość pudeł jest wypuszczana specjalnie dla VirtualBox. Teraz możesz wybrać hiperwizor według własnego gustu, najważniejsze jest to, że jest on obsługiwany przez pudełko, z którego będziesz korzystać.

Korzystanie z Vagranta rozwiązuje problem tożsamości stanu środowiska programistycznego, niezależnie od systemu operacyjnego na maszynie hosta (jest to nazwa twojego komputera lokalnego, na którym pracujesz). System operacyjny gościa działający na maszynie wirtualnej będzie zawsze taki sam. Niestety Vagrant jest tylko dla zapewnienie tożsamości państwa w trakcie rozwoju. Nie mogę zainstalować Vagranta na serwerze(dokładniej oczywiście jest to możliwe, ale lepiej tego nie robić), ponieważ wirtualizacja za pomocą Vagranta działa na poziomie maszyny wirtualnej, która oczywiście nie nadaje się do produkcji. Ale Vagrant działa dokładnie tak samo w różnych systemach operacyjnych. Jeśli członkowie Twojego zespołu preferują różne systemy operacyjne lub pracują nad projektem z różnych lokalizacji, w których mogą być używane różne systemy operacyjne.

Maszyna wirtualna zarządzana przez Vagrant to pełnoprawny serwer wirtualny z systemem operacyjnym i zainstalowanym całym niezbędnym zestawem aplikacji i usług.

Warto powiedzieć, że oprócz wirtualizacja cały system operacyjny, wraz ze wszystkimi aplikacjami i usługami, jest też rozwiązanie konteneryzacja poszczególne usługi bezpośrednio na komputerze lokalnym.

Prawdziwa, pełnoprawna konteneryzacja działa tylko w systemie operacyjnym Linux, w innych systemach operacyjnych do uruchomienia konteneryzacji wykorzystywane są maszyny wirtualne, co sprawia, że ​​korzystanie z konteneryzacji nie jest tak wygodnym narzędziem. Ale korzystając z konteneryzacji otrzymujemy możliwość powtórzenia tożsamości stanu, także na serwerze w produkcji, co w niektórych projektach może być bardzo istotne.

Jednym z najczęstszych i najpopularniejszych sposobów pracy z kontenerami w systemie Linux jest aplikacja Docker, o której napiszę w innym artykule. Na razie wróćmy do wirtualizacji za pomocą Vagranta.

Aby wdrożyć pudełko na maszynę wirtualną, potrzebujesz pliku konfiguracyjnego, który opisuje wszystkie opcje wdrażania. Taki plik nazywa się Włóczęga i jest napisany przy użyciu składni Ruby (w której jest napisany Vagrant). Nie będę zmuszał Cię do ręcznego pisania takiego pliku. Najczęściej w opisie instalacji twojego boxa możesz znaleźć gotowy plik, w którym wystarczy wprowadzić kilka ręcznych zmian. Ale wszystko to jest indywidualne dla każdego pudełka. W każdym razie instrukcje dotyczące wdrażania opartej na niej maszyny wirtualnej znajdziesz w instrukcji dla niej. Na wszelki wypadek jeszcze raz powtórzę link do schowka.

Jak zainstalować i wypróbować

zainstalować

Najpierw musisz zainstalować hipernadzorcę, a następnie zainstalować samego Vagranta. Aby maszyny wirtualne działały, procesor musi obsługiwać wirtualizację i musi być włączony w systemie BIOS.

Zacznijmy od hiperwizora VirtualBox, aby wszystko na pewno zadziałało. Jest to wspaniały darmowy hiperwizor firmy Oracle, który jest bardzo szybki i łatwy w instalacji i działa natychmiast bez tańczenia z tamburynem.

Przed rozpoczęciem instalacji upewnij się, że ścieżka do Twojego katalogu domowego oraz ścieżka do plików Twoich projektów nie zawierają znaków cyrylicy. Jeśli nadal masz znaki cyrylicy, musisz utworzyć dwa katalogi, na przykład D: \ VagrantHome i D: \ VirtualBoxMachines. Pierwszy będzie zawierał pliki Vagrant, a drugi będzie zawierał pliki maszyn wirtualnych VirtualBox. Teraz utwórz zmienną środowiskową o nazwie VAGRANT_HOME i wartości D: \ VagrantHome. Restart.

Teraz możesz pobrać i zainstalować VirtualBox. Po instalacji otwórz okno aplikacji i przejdź do Plik-Ustawienia-Ogólne. Jeśli utworzyłeś katalog taki jak D: \ VirtualBoxMachines, określ ścieżkę do niego tutaj, gdzie „Domyślny folder dla maszyn”. Następnie okno aplikacji można zamknąć.

Przejdźmy teraz do instalacji Vagranta. Pobierz i zainstaluj w domyślnym katalogu. Wcześniej był problem, jeśli podałeś inny katalog, chociaż było to 2 lata temu, ale mimo to strach pozostał. Uruchom ponownie zgodnie z wymaganiami instalatora.

Ostatnią przydatną rzeczą jest git. Jest to klient wymagany do pracy z systemem kontroli wersji git. Jeśli jeszcze tego nie znasz, koniecznie sprawdź, do czego służy i do czego służy. Spodoba Ci się.

Zachowaj ostrożność podczas instalacji. Ponieważ programujemy w PHP, nasze pliki, niezależnie od systemu operacyjnego, muszą mieć zakończenia w postaci \n lub LF. Oznacza to, że nie musimy automatycznie konwertować końców linii w naszych plikach źródłowych. Tak więc podczas instalacji git, gdy zostaniesz poproszony o wybranie sposobu obsługi zakończeń linii na ekranie instalacyjnym „Konfigurowanie konwersji zakończeń linii”, wybierz drugą opcję „Zamów w stanie, w jakim jest, zatwierdź zakończenia linii w stylu Uniksa”. a git nie zmieni końcówek linii na \ r \ n, jak to jest zwykle w przypadku programowania w innych językach programowania.

Opisane procedury były dłuższe dla systemu Windows, jednak możesz zainstalować VirtualBox i Vagrant w ten sam sposób w innych systemach operacyjnych. Znaczenie jest takie samo.

Porządkujemy pudła

Możesz użyć różnych pudełek, na przykład dostarczonych z ramami lub zalecanych przez nich.

Jedna maszyna wirtualna na projekt

Jeśli programujesz (lub po prostu chcesz zacząć programować) na frameworku Yii2, to szablony aplikacji (podstawowe i zaawansowane) zawierają już plik konfiguracyjny Vagrantfile, który wykorzystuje pole bento / ubuntu-16.04... Cała konfiguracja: provision, nginx oraz konfiguracja samej maszyny wirtualnej jest opisana w różnych plikach znajdujących się w vagrant katalogu w katalogu głównym aplikacji.

Jeśli przyjrzysz się bliżej plikowi Vagrantfile, znajdziesz miejsca, w których znajdują się te pliki konfiguracyjne. W takim przypadku dla jednej aplikacji tworzona jest osobna maszyna wirtualna, co jest bardzo wygodne, jeśli chcesz zachować integralność środowiska programistycznego między wszystkimi Twoimi maszynami a maszynami Twoich współpracowników.

W pliku Vagrantfile znajdziesz parametr config.vm.synced_folder, który określa katalogi do wyświetlenia (synchronizacji). W tym przypadku, obecny katalog hosta (Twojego komputera) mapuje do katalogu / aplikacja na wirtualnym. Wszystkie pliki, które masz w bieżącym katalogu, są również natychmiast dostępne na maszynie wirtualnej w katalogu / app.

Jeśli Twój projekt potrzebuje nowego rozszerzenia PHP lub innej zależności, wystarczy dodać je do pliku vagrant / provision/ Once-as-root.sh, który jest skryptem do instalacji i konfiguracji maszyny wirtualnej . Gdy tylko to zrobisz i wyślesz zmieniony plik do repozytorium, Twoi koledzy otrzymają wszystkie te zmiany i wprowadzając tylko jedno polecenie, ponownie skonfigurują swoje maszyny wirtualne. Dzięki temu nie musisz mówić i pamiętać, co gdzie zainstalować i jak skonfigurować - wszystko jest zapisane w skryptach do automatycznego wdrażania maszyny wirtualnej.

Jedna maszyna wirtualna do wszystkich projektów

Innym sposobem wykorzystania wirtualizacji jest użycie jednej maszyny wirtualnej do wszystkich projektów. Jest to dokładnie podejście przyjęte w oddzielnej maszynie wirtualnej od autorów Laravela o nazwie Homestead. Warto zauważyć, że Homestead może być również wdrożony jako maszyna wirtualna dla pojedynczego projektu, podobnie do opcji opisanej powyżej, ale poniżej przyjrzymy się dokładnie opcji używania jednej maszyny dla wszystkich projektów. Jak uruchomić Homestead dla jednego projektu.

W takim przypadku pliki konfiguracyjne maszyny wirtualnej nie należą do żadnego projektu, ale są przechowywane oddzielnie. Główna konfiguracja jest generalnie przenoszona do katalogu domowego użytkownika. Z jednej strony jest to niewygodne, ponieważ traci się wygodną synchronizację ustawień maszyn wirtualnych między stacjami roboczymi, ale z drugiej strony masz tylko jedną maszynę wirtualną, która jest idealnie skonfigurowana od razu po zainstalowaniu i posiada bardzo prosty, elastyczny i bardzo wydajny sposób konfiguracji.

Aby skorzystać z tego pola, musisz pobrać pliki z repozytorium i utworzyć parę kluczy RSA (publiczny i prywatny). Jak to zrobić jest opisane.

Inne

Gotowych zestawów konfiguracji dla różnych skrzynek jest znacznie więcej, aby deweloper nie tracił czasu na samodzielną konfigurację. Każdy wybiera dogodną dla siebie mieszankę możliwości.

Próbować

Więc. Mamy zainstalowany VirtualBox i Vagrant. Teraz czas zacząć z nich korzystać. Zgodziliśmy się, że użyjemy pudełka Laravel / Gospodarstwo... Dostępne są instrukcje dotyczące jego wdrożenia. Koniecznie sprawdź to, ponieważ może zawierać bardziej aktualne informacje. Poniżej opiszę proste kroki.

Po raz kolejny zgodzimy się, że wszystkie nasze projekty pięknie prezentują się w katalogu D: \ mojeProjekty, ułożone w tatusiach. Będziemy polegać na tym katalogu poniżej. Musisz go zastąpić własnym.

Następnie musisz wprowadzić polecenia w wierszu poleceń. Zalecam jednak używanie interpretera zamiast zwykłego wiersza poleceń git-bash który jest dostarczany z git w systemie Windows. Uruchom go i przejdź do katalogu z projektami, uruchamiając polecenie

Cd / D / mojeProjekty

(zwróć uwagę na ukośniki na ścieżce za pomocą litery dysku). Teraz musisz najpierw pobrać samo pudełko, a następnie pobrać dla niego zestaw plików konfiguracyjnych wdrożenia z repozytorium. Wykonujemy:

Pudełko Włóczęgi dodaj laravel / homestead git clone https://github.com/laravel/homestead.git Homestead

Tak więc pudełko jest załadowane, tak samo konfiguracja. Teraz musisz rozpocząć inicjalizację tej konfiguracji (skrypt po prostu skopiuje pliki na ich miejsca). Następnie zainstalujemy wtyczkę do automatycznego zarządzania plikiem hosta na twoim komputerze lokalnym. Execute (Przykład wskazuje gałąź z wersją 7.0.1 - aktualną w momencie pisania tego tekstu. Potrzebujesz również najnowszego brancha):

Cd Homestead git checkout v7.0.1 ./init.sh vagrant plugin zainstaluj vagrant-hostmanager

Homestead powinien następnie pojawić się w twoim katalogu domowym, zawierającym plik Homestead.yaml - jest to plik konfiguracyjny w formacie YAML, który musisz otworzyć za pomocą dowolnego edytora kodu i edytować. Zobaczmy, co jest w środku. Pokażę Ci już edytowany plik, którego używam w konfiguracji testowej. Alternatywnie możesz zapoznać się z dokumentacją konfiguracji Homestead, aby uzyskać więcej informacji.

Ip: "192.168.22.2" pamięć: 2048 cpus: 2 provider: virtualbox foldery: - map: d: \ myProjects to: / home / vagrant / strony www: - map: hmvc.app to: / home / vagrant / www / hmvc / public - mapa: yiibasic.app do: / home / vagrant / www / yii2basic / web bazy danych: - homestead

Tutaj widać, że adres IP maszyny wirtualnej to 192.168.22.2, do niej przydzielone są 2 GB pamięci RAM i 2 rdzenie procesora. Dostawca (hiperwizor) - VirtualBox.

Poniżej znajduje się lista folderów w lokalnych folderach systemowych, które są mapowane na katalogi maszyny wirtualnej. Mam jeden - katalog d:\myProjects (określony w dyrektywie map) jest mapowany na katalog /home/vagrant/www (określony w dyrektywie to) wewnątrz maszyny wirtualnej. Oznacza to, że wszystkie znajdujące się w nim pliki i katalogi będą automatycznie dostępne wewnątrz maszyny wirtualnej pod określoną ścieżką.

Na samym dole przykładu znajdują się bazy danych. Używam jednej bazy danych o nazwie homestead.

W poniższym pliku nadal masz inne informacje, na przykład informacje o przekierowaniu portów z maszyny lokalnej na wirtualną. W razie potrzeby możesz użyć tej funkcji.

Po skompilowaniu pliku konfiguracyjnego po prostu uruchamiamy maszynę wirtualną. Wracamy do interpretera git-bash i będąc w katalogu / D / myProjects / Homestead wykonujemy polecenie vagrant up.

Pierwsze uruchomienie tego polecenia spowoduje natychmiastowe wdrożenie maszyny wirtualnej i skonfigurowanie jej zgodnie z plikami konfiguracyjnymi. Aby zatrzymać maszynę wirtualną z katalogu / D / myProjects / Homestead, uruchom vagrant halt. Kolejne uruchomienia maszyny wirtualnej będą znacznie szybsze, ponieważ będzie już gotowy obraz maszyny wirtualnej, wdrożony po wyjęciu z pudełka i skonfigurowany.

Jeśli zmienisz cokolwiek w pliku konfiguracyjnym, wystarczy uruchomić wdrożenie wymuszone, uruchamiając udostępnienie polecenia vagrant. Wszystkie zmiany konfiguracji zostaną zastosowane do bieżącej maszyny wirtualnej.

Globalny dostęp do zarządzania Homestead

Ponieważ opisana metoda korzystania z maszyny wirtualnej Homestead zakłada instalację globalną do użytku przez wszystkie projekty na maszynie lokalnej, chciałbym móc zarządzać tą maszyną wirtualną nie z katalogu d: \ myProjects \ Homestead, ale z dowolnego miejsca.

Konfiguracja jest bardzo łatwa. Zapoznaj się z tą sekcją dokumentacji, aby dowiedzieć się, jak to zrobić w różnych systemach operacyjnych.

Wniosek

Wykorzystanie maszyn wirtualnych do tworzenia aplikacji WEBowych znacząco oszczędza czas i wysiłek związany z konfiguracją środowiska i aktualizowaniem go na kilku stacjach roboczych. Deweloper nie traci czasu na konfigurowanie serwera WWW dla Windowsa, co czasem wymaga szamańskiego doświadczenia i nie marnuje nerwów na eliminowanie nieustannego strumienia błędów. Zwłaszcza jeśli właśnie zdecydowałeś, że chcesz rozpocząć programowanie, nie powinieneś marnować nerwów na wdrażanie środowiska w systemie Windows.

Różnica w zużytych zasobach maszyny wirtualnej i tej opcji, jeśli środowisko zostało wdrożone lokalnie w systemie Windows, ma tendencję do zera. Wygoda korzystania z maszyny wirtualnej dąży do maksimum. Dodatkowym doświadczeniem związanym z tą metodą programowania jest pasywne poznawanie normalnych systemów operacyjnych, takich jak Debian czy Ubuntu.

Manipulacje maszynami wirtualnymi są wykonywane albo z wiersza poleceń, albo przez naciskanie przycisków w PhpStorm IDE (w menu Tools-Vagrant). Podstawowe polecenia sterujące:

vagrant up - uruchamia maszynę wirtualną. Jeśli maszyna wirtualna nie została jeszcze zbudowana, najpierw ją buduje (w razie potrzeby pobiera obraz pudełka).

vagrant halt - Zatrzymuje maszynę wirtualną.

vagrant reload - Ponownie uruchamia maszynę wirtualną.

vagrant ssh — otwiera połączenie ssh z maszyną wirtualną.

włóczęga — odbudowuje maszynę wirtualną (na przykład, jeśli pliki konfiguracyjne uległy zmianie).

Resztę poleceń znajdziesz wchodząc do pomocy włóczęgi.

Miłego użytkowania!