Vagrant für Windows 10 installieren und konfigurieren. Erste Schritte mit Vagrant und warum Sie es überhaupt brauchen. Was ist in der Basisbox?

Vagrant arbeitet mit virtuellen Maschinen, was bedeutet, dass es eine Art „Anbieter“ für die Virtualisierung benötigt. Und für unser Beispiel ist VirtualBox geeignet.

VirtualBox 5 unter Windows 10 installieren

Laden Sie zunächst die neueste Version von VirtualBox (derzeit 5.2.18) von der offiziellen Website herunter. Klicken Sie dazu nach dem Klicken auf den Link zur Download-Seite auf den Link Windows-Hosts:

Die heruntergeladene Datei VirtualBox-5.2.18-124319-Win.exe wird ausgeführt, um VirtualBox zu installieren. Der Installationsvorgang selbst beschränkt sich auf das Drücken einiger „Weiter“-Tasten und das Warten auf den Abschluss des Vorgangs. Nach dem Start des Installationsprogramms erscheint das folgende Fenster:

Hier klicken wir auf Weiter.

Wählen Sie im nächsten Schritt alle zu installierenden Komponenten aus (standardmäßig ausgewählt) und klicken Sie auf Weiter:

Geben Sie im nächsten Schritt zusätzliche Einstellungen an (falls erforderlich) oder belassen Sie alles auf der Standardeinstellung und klicken Sie auf die Schaltfläche „Weiter“:


Im nächsten Schritt bestätigen wir die Installation des virtuellen Adapters (d. h. klicken Sie auf Ja):

Klicken Sie im letzten Schritt auf die Schaltfläche „Installieren“:

Wenn während des Installationsvorgangs die Benutzerkontensteuerung aktiviert ist, wird möglicherweise das folgende Bestätigungsfenster angezeigt. Klicken Sie darin auf „Ja“. Danach beginnt der eigentliche Installationsvorgang.

Außerdem erscheint während der Installation von VirtualBox 5 unter Windows 10 ein Dialogfeld, das die Installation zusätzlicher Software bestätigt:

Hier klicken wir auf die Schaltfläche „Installieren“.

Und nachdem die Installation abgeschlossen ist, erscheint ein Dialogfeld:

Damit ist der VirtualBox-Installationsprozess unter Windows 10 abgeschlossen.

Vagrant unter Windows 10 installieren

Um Vagrant zu installieren, müssen Sie das Paket mit den Installationsdateien herunterladen, das unter dem Link verfügbar ist. Wählen Sie im angezeigten Fenster die neueste Version des Installationsprogramms aus (2.1.5 zum Zeitpunkt des Verfassens dieses Artikels):


Und wählen Sie eine Datei mit der Erweiterung .msi für die Installation unter Windows aus:

Führen Sie nach dem Herunterladen die Datei vagrant_2.1.5_x86_64.msi aus. Als Ergebnis erscheint ein Willkommensdialogfeld:

Im nächsten Schritt stimmen wir den Nutzungsbedingungen zu (aktivieren Sie das Kontrollkästchen „Ich akzeptiere ...“) und klicken Sie auf „Weiter“:

Geben Sie im nächsten Schritt das Verzeichnis an, in dem das Programm installiert werden soll. Sie können den Standardpfad beibehalten. Denken Sie jedoch daran, wo wir ihn installieren (Sie können den Pfad kopieren):

Klicken Sie im nächsten Fenster auf die Schaltfläche „Installieren“:

Wir warten auf den Abschluss der Installation:

Danach erscheint ein Fenster mit den Ergebnissen des Installationsabschlusses:

Nachdem die Installation von Vagrant unter Windows 10 abgeschlossen ist, erscheint ein Fenster, in dem Sie aufgefordert werden, Ihren Computer neu zu starten:

Hier klicken wir auf „Ja“ und warten auf den Neustart des Computers. Wenn Sie andere Programme manuell schließen (oder Änderungen an wichtigen Dokumenten speichern müssen), klicken Sie auf die Schaltfläche „Nein“ und starten Sie den Computer dann manuell neu.

Änderungen an Umgebungsvariablen vornehmen

Stellen Sie nach dem Neustart des Computers sicher, dass Sie die Vagrant-Variable zu den Systemvariablen hinzufügen. Dies ist notwendig, damit Sie Vagrant auf der Kommandozeile mit einem einzigen Befehl aufrufen können: vagrant.

Wir werden über die Befehlszeile Änderungen an den Umgebungsvariablen vornehmen, und insbesondere an der PATH-Variablen werden wir den Pfad zu dem Verzeichnis hinzufügen, in dem Vagrant installiert ist (in unserem Fall ist dies: C:\HashiCorp\Vagrant\bin).

Berufung Befehlszeile auf die folgende Weise:

1. Drücken Sie die Tasten Strg+R auf der Tastatur, um das Fenster „Ausführen“ zu öffnen.
2. Geben Sie im angezeigten Fenster den Befehl cmd ein
3. Drücken Sie die OK-Taste:

Als Ergebnis sollten Sie Folgendes erhalten:

Fügen Sie im Befehlszeilenfenster den folgenden Befehl hinzu: set PATH=%PATH%;C:\HashiCorp\Vagrant\bin

und drücken Sie die Eingabetaste:


Und um nun zu überprüfen, ob es uns gelungen ist, den Pfad zu Vagrant in den Umgebungsvariablen festzulegen, geben wir im selben Befehlszeilenfenster den Befehl ein: vagrant -v

und drücken Sie die Eingabetaste:


Und mit diesem Befehl erhalten wir Informationen über die Version des installierten Vagrant. Wenn alles wie im Artikel gelaufen ist, dann wurde alles richtig gemacht.

Damit ist die Installation und Konfiguration von Vagrant und VirtualBox unter Windows 10 abgeschlossen.

Erstellen einer virtuellen Maschine in Vagrant unter Windows 10

Zum Gestalten virtuelle Maschine Erstellen wir zunächst ein separates Verzeichnis, zum Beispiel VagrantVM:

Öffnen Sie dieses Verzeichnis in der Befehlszeile. Dazu verwenden wir den Befehl cd. In unserem Fall befindet sich das Verzeichnis im folgenden Pfad:

C:\VM"s\VagrantVM

Führen Sie also in der Befehlszeile den folgenden Befehl aus:

Cd C:\VM"s\VagrantVM

Als Ergebnis erhalten wir Folgendes:


Beispielsweise verwenden wir die Assembly ubuntu/trusty64 . Um es auf einer virtuellen Maschine auszuführen, müssen Sie die Box zunächst mit dieser Assembly initialisieren. Führen Sie dazu den folgenden Befehl in der Befehlszeile aus:

Vagrant init ubuntu/trusty64

Als Ergebnis erhalten wir folgende Meldung:



Lassen Sie uns nun die initialisierte Box ausführen:

Landstreicher auf

Nach der Ausführung dieses Befehls werden der Startvorgang und die Konfiguration der virtuellen Maschine gestartet. Nachdem dieser Vorgang abgeschlossen ist, erscheint eine neue virtuelle Maschine in VirtualBox:



Sie können mit dieser virtuellen Maschine über SSH arbeiten. Dazu benötigen wir das Programm PuTTY, das hier heruntergeladen werden kann (den Installationsvorgang werden wir nicht beschreiben, er ist recht einfach).

Sie können auch über die Befehlszeile mit virtuellen Vagrant-Maschinen arbeiten. Führen Sie im selben Befehlszeilenfenster den Befehl aus:

Landstreicher ssh

Dadurch werden Sie aufgefordert, ein Passwort einzugeben:

Standardpasswort: vagrant. Benutzername: vagrant. Deshalb geben wir hier das Passwort ein: vagrant. Und drücken Sie die Eingabetaste.

Als Ergebnis erhalten wir nach Eingabe des Passwortes folgendes Fenster:

das heißt, wir gelangen in die Ubuntu-Shell. Hier können Sie über die Kommandozeile direkt mit der virtuellen Maschine arbeiten.

Um von diesem Modus zum normalen Befehlsmodus zurückzukehren Windows-Strings, führen Sie den Befehl aus: Beenden

Um mit einer virtuellen Maschine über das PuTTY-Programm zu arbeiten, geben Sie die folgenden Parameter für die Verbindung zu einer virtuellen Maschine an:



Und drücken Sie die Öffnen-Taste. Klicken Sie im angezeigten Dialogfeld auf Ja:


Als Ergebnis erhalten wir Folgendes:



Hier müssen Sie Ihren Benutzernamen und Ihr Passwort eingeben (wie wir zuvor festgelegt haben, standardmäßig vagrant / vagrant):



***Hinweis: Bei der Passworteingabe werden die Zeichen nicht angezeigt (auf keinen Fall, nicht einmal Sternchen).

Um eine laufende Box herunterzufahren, führen Sie den folgenden Befehl im Befehlszeilenfenster aus:

Landstreicher-Halt

*** Wenn das Befehlszeilenfenster zuvor geschlossen wurde, müssen Sie es erneut starten und mit dem Befehl cd das Verzeichnis öffnen, in dem sich unsere virtuelle Maschine befindet.

Damit ist dieser Artikel abgeschlossen. In den folgenden Artikeln werfen wir einen genaueren Blick darauf, wie Sie einen Webserver auf einer virtuellen Vagrant-Maschine einrichten können.

Ihre erste virtuelle Vagrant-Umgebung

  • Vorteile der Verwendung von Vagrant
  • Vorteile für Einzelentwickler
  • Vorteile für das Entwicklungsteam
  • Vorteile für das Unternehmen

Projektaufbau

  • Vagrantfile
  • Einrichten eines Vagrant-Projekts
  • Einrichtung eines Webprojekts

Images virtueller Maschinen (virtuelle Boxen)

  • Erhalten eines Basis-Images einer virtuellen Maschine
  • Virtuelle Boxen entfernen
  • Konfigurieren des Projekts zur Verwendung der gewünschten virtuellen Box
  • Überprüfung der Einstellung

SSH-Setup

Bereitstellung für virtuelle Boxen (Provisioning)

Port-Weiterleitung

Verpackung

Stoppen Sie virtuelle Boxen (Teardown)

  • Suspend – Gehen Sie in den Ruhezustand und speichern Sie dabei den aktuellen Status des Systems
  • Anhalten – normales Herunterfahren
  • Zerstörung – Abschluss der Arbeiten mit Reinigung aller Boxdateien

Schneller Zusammenbau

Start

Vagrant ist ein Manager für Ihre virtuellen Entwicklungsumgebungen. Tatsächlich ist es ein Add-on für das VirtualBox-Programm von Oracle und bietet schnelle Erstellung und Einrichten virtueller Maschinen. Auf diese Weise erstellte virtuelle Maschinen – Boxen (Boxen) – werden von Webanwendungsentwicklern verwendet, um die erforderliche Entwicklungsumgebung aufzubauen. Anschließend können sie zur Installation und Nutzung durch andere Entwickler im Team in spezielle Behälter (Boxen) verpackt werden.

Wo bekomme ich VirtualBox?

Vagrant ist vollständig auf das VirtualBox-Programm angewiesen und erstellt damit virtuelle Bilder. Der Hauptzweck von VirtualBox ist die vollständige Virtualisierung von x86-Hardware. Dies ist ein Open-Source-Projekt Quellcode, das Virtualisierung auf professionellem Niveau bietet und sowohl auf Servern als auch auf Desktop-Computern zum Aufbau virtueller Umgebungen verwendet werden kann. VirtualBox ist für Windows, Mac OS X, Linux und Solaris verfügbar.

Vagrant unterstützt derzeit VirtualBox 4.0.x, 4.1.x und 4.2.x.

Vagrant installieren

Um Vagrant zu installieren, müssen Sie das entsprechende Paket oder Installationsprogramm herunterladen diese Download-Seite und installieren Sie es mithilfe des standardmäßigen Aauf Ihrem System. Auf Windows- und Mac OS Auf anderen Systemen müssen Sie /opt/vagrant/bin selbst zu Ihrer PATH-Umgebungsvariablen hinzufügen.

Wenn Sie kein Vagrant-Installationsprogramm für Ihr System finden, können Sie es mit RubyGems mit gem install vagrant installieren. Denken Sie jedoch daran, dass die Installation aus Paketen oder über ein Installationsprogramm die bevorzugte Methode zur Installation einer Anwendung ist.

IN Ihre erste virtuelle Vagrant-Umgebung

Geben Sie in der Befehlszeile Folgendes ein:

$ vagrant init precision32-box

$ Landstreicher auf

Diese Befehle sind erforderlich, um die virtuelle Maschine mit Vagrant zu starten. Bitte beachten Sie, dass die oben genannten Befehle eine voll funktionsfähige virtuelle Maschine auf dem präzisen Betriebssystem Ubuntu 12.04LTS mit einer Standardspeichergröße von 512 MB ausführen.

P Vorteile der Verwendung von Vagrant

Viele Webentwickler nutzen virtuelle Umgebungen, um ihre Webanwendungen zu entwickeln. Cloud-Dienste zum Erstellen und Bereitstellen virtueller Umgebungen für Produktion und Entwicklung erfreuen sich immer größerer Beliebtheit und reichen von EC2, Rackspace Cloud bis hin zu spezialisierteren Diensten wie EngineYard und Heroku. Vagrant implementiert ähnliche Prinzipien beim Erstellen virtueller Maschinen für die lokale Entwicklung und das Testen Ihrer Anwendungen auf einem Produktionscomputer. Diese Arbeitsorganisation erhöht die Flexibilität und Produktivität von Ihnen und Ihrem Team bei der Entwicklung von Webanwendungen.

Um virtuelle Umgebungen bereitzustellen und zu konfigurieren, nutzt Vagrant bewährte Virtualisierungstechnologien in Form von Oracles VirtualBox und automatisierte Anwenvon Chef und Puppet.

P Vorteile für einen einzelnen Entwickler

Die Verwendung der gleichen Entwicklungsumgebung für verschiedene Projekte, die für unterschiedliche Versionen von Programmiersprachen und Frameworks konzipiert sind, ist oft eine sehr schwierige Aufgabe. Was passiert, wenn ein Projekt auf PHP4 läuft, das zweite auf PHP 5.2.x und das dritte auf PHP 5.3.x oder 5.4.x und es in der Version der Sprache getestet werden muss, für die es entwickelt wurde?

Es ist keine Option, eine Reihe verschiedener Versionen von Sprachen und Diensten zu installieren und eine funktionierende Maschine zu laden, weil. Früher oder später wird Ihr System längere Zeit hochfahren, langsamer werden und ausfallen. Ein weiterer Punkt ist, dass jedes der Arbeitsprojekte in der Produktion auf dem Server arbeitet, auf dem eine bestimmte Umgebung vorhanden ist. Daher ist es bei der Entwicklung eines solchen Projekts erforderlich, dass die Umgebung auf dem Computer des Entwicklers genau mit der Umgebung auf dem Produktionsserver übereinstimmt, damit die Der Entwickler kann absolut sicher sein, dass er bei der Bereitstellung seiner Webanwendung auf einem Produktionsserver keine bösen Überraschungen erlebt.

Vagrant löst diese Probleme. Damit können Sie virtuelle Maschinen mit der für jedes spezifische Projekt erforderlichen Umgebung erstellen. Wenn Sie von einem Projekt zu einem anderen wechseln, stoppen Sie einfach eine virtuelle Maschine mit ein paar Befehlen und starten eine andere, die für ein anderes Projekt benötigt wird. Alles ist genial und einfach!

P Vorteile für das Entwicklungsteam

Alle Teammitglieder sollten idealerweise über die gleiche Entwicklungsumgebung verfügen: die gleichen Versionen, Abhängigkeiten, Einstellungen usw. Schließlich arbeitet das Team theoretisch an gemeinsamen Projekten. Was aber, wenn ein Teil des Teams an einem Projekt mit einer Version der Datenbank, beispielsweise MySQL, arbeitet und der andere Teil an einem Projekt, bei dem PostgreSQL oder MSSQL verwendet wird? Was passiert, wenn ein Teammitglied mit der Entwicklung eines anderen Projekts beginnen muss, das eine andere Version der Sprache oder Datenbank usw. hat? Im Allgemeinen treten anhaltende Kopfschmerzen auf, die zu einer Verlangsamung der Entwicklung und einer Verringerung der Effektivität des Teams führen.

In diesem Fall ermöglicht Vagrant dem Team, vorgefertigte virtuelle Umgebungsbilder für ihre jeweiligen Projekte zu erstellen und zu verwenden. Wenn ein anderes Teammitglied an der Entwicklung eines anderen Projekts teilnimmt, übernimmt es einfach das Image der virtuellen Maschine für dieses Projekt von seinen Kollegen und stellt dieses Image für sich selbst bereit. Innerhalb weniger Minuten erhält der Entwickler eine fertige Umgebung und kann sicher direkt mit seinem Teil der Arbeit fortfahren.

P Vorteile für das Unternehmen

Wenn Sie ein großes Unternehmen haben und an einem großen Entwicklungsprojekt arbeiten, müssen Sie ständig neue Komponenten zur Anwendungsinfrastruktur hinzufügen, beispielsweise verschiedene Caching-Systeme, Event-Handler, Datenbankserver usw. In diesem Fall stellt Ihnen Vagrant ein Tool zur Verfügung, mit dem Sie vorgefertigte Entwicklungsumgebungen erstellen und verteilen können. Wenn nun ein neuer Mitarbeiter in Ihr Unternehmen kommt, muss er nicht viel Zeit damit verbringen Ersteinrichtung ihres gesamten Systems, sich an der Entwicklung der Anwendung zu beteiligen.

H Projektaufbau

Sobald Sie Vagrant auf Ihrem System installiert haben, erfolgt die gesamte Verwaltung über den Befehl vagrant. Dieser Befehl verfügt über viele notwendige Unterbefehle, zum Beispiel vagrant up – um eine virtuelle Maschine zu starten, vagrant ssh – um eine Verbindung über ssh herzustellen, vagrant package – um ein Paket der aktuellen virtuellen Umgebung zu erstellen, das für die Bereitstellung auf einem anderen Computer bereit ist usw. Um alle verfügbaren Befehle anzuzeigen, geben Sie einfach vagrant an der Eingabeaufforderung ein.

Vagrantfile

H Ein Vagrant-Projekt einrichten

Der erste Schritt für jedes Vagrant-Projekt besteht darin, ein Projektstammverzeichnis zu erstellen und das Projekt zu initialisieren:

$ mkdir my_vagrant_project

$ cd my_vagrant_project

$ vagrant init

Der Vagrant-Init-Befehl erstellt eine Vagrant-Datei. Wir lassen diese Datei zunächst unverändert, bearbeiten sie jedoch später, um die virtuelle Maschine unseres Projekts einzurichten.

H Einrichtung eines Webprojekts

Nachdem Vagrant nun eingerichtet ist, erstellen wir ein kleines Webprojekt, das wir später verwenden werden, um zu demonstrieren, wie Vagrant funktioniert. Erstellen Sie eine Index-HTML-Datei im Stammverzeichnis des Vagrant-Projekts (dort, wo sich Vagrantfile befindet):

$echo"

Hallo von einer Vagrant-VM

" > index.html

Damit ist die Konfiguration des Webprojekts im Prinzip abgeschlossen.

UM Abbilder virtueller Maschinen (virtuelle Boxen)

Der nächste Schritt nach der Projektinitialisierung besteht darin, eine Basisbox zu erstellen. Vagrant erstellt keine virtuelle Maschine von Grund auf. Es importiert das Basis-Image der virtuellen Maschine, startet es und wendet dann alles an notwendigen Einstellungen in der Vagrantfile-Konfigurationsdatei angegeben. Dies erleichtert Vagrant-Benutzern das Leben. Sie müssen keine Zeit damit verbringen, Einstellungen der virtuellen Maschine wie zugewiesenen virtuellen Speicher, Festplattenspeicher, Netzwerkschnittstellen usw. zu konfigurieren.

P Ein Basis-Image einer virtuellen Maschine abrufen

Ganz am Anfang des Artikels haben wir bereits das präzise 32-Bit-Basisimage von Ubuntu 12.04LTS heruntergeladen und zu Vagrant hinzugefügt. Bitte beachten Sie: Wenn Sie das Bild bereits heruntergeladen haben, müssen Sie es nicht jedes Mal erneut herunterladen, wenn Sie es starten. Vagrant unterstützt das Herunterladen von Bildern sowohl aus dem Internet als auch von Ihrem Festplatte. Ganz am Anfang des Artikels haben wir den folgenden Befehl ausgeführt:

$ vagrant box fügt precision32-box hinzu http://files.vagrantup.com/precise32.box

Nach der Ausführung lud Vagrant das Bild herunter und speicherte es im Systemordner des Benutzers auf der Festplatte. Gleichzeitig wurde dieses Bild automatisch zum globalen Bereich der aktuellen Vagrant-Installation auf Ihrem Computer hinzugefügt, d. h. Jetzt steht dieses Image für alle Projekte, die Sie erstellen, bei der Bereitstellung einer virtuellen Umgebung zur Auswahl zur Verfügung. Außerdem hat jedes auf diese Weise hinzugefügte Bild einen eindeutigen Namen, in diesem Beispiel precision32-box .

Adresse http://files.vagrantup.com/precise32.box Wir haben es am Anfang nur einmal verwendet, jetzt werden wir das Basis-Image vom lokalen Speicher auf der Festplatte verbinden.

Bei entfernte virtuelle Boxen

So einfach wie das Hinzufügen ist das Entfernen virtueller Boxen. Verwenden Sie dazu den Befehl:

$ vagrant box my_box entfernen

In diesem Fall wird die Box physisch von der Festplatte entfernt. Danach kann keine der zuvor auf Basis dieser Box erstellten virtuellen Maschinen mehr gestartet werden.

H Konfigurieren des Projekts zur Verwendung der gewünschten virtuellen Box

Nachdem die virtuelle Box mit dem Namen precision32-box nun zu Vagrant hinzugefügt wurde, können wir sie zu unseren Projekten hinzufügen. Dazu schreiben Sie die folgende Zeile in die Vagrantfile-Konfigurationsdatei:

P Überprüfung der Einstellung

Im Moment haben wir die grundlegendste Einrichtung unserer virtuellen Umgebung durchgeführt. Wir haben keine Portweiterleitung, keine Bereitstellung für die Umgebung usw. festgelegt. Aber auch mit solchen Grundeinstellung Wir haben eine voll funktionsfähige virtuelle Maschine. Sie können dies überprüfen, indem Sie den folgenden Befehl vagrant aus dem Stammverzeichnis des Projekts eingeben. Dieser Befehl startet die virtuelle Maschine. Um eine laufende virtuelle Maschine zu stoppen und den von ihr belegten Speicherplatz zu bereinigen, müssen Sie den Befehl vagrant destroy ausführen:

$ Landstreicher auf

$ vagrant zerstören

SSH-Setup

Vagrant bietet vollständigen Zugriff auf die virtuelle Maschine über das SSH-Protokoll mit dem Befehl vagrant ssh. Nachdem Sie diesen Befehl ausgeführt haben, wird ein Terminal geöffnet und Sie sehen etwa die folgende Eingabeaufforderung:

$ vagrant ssh

[email protected]:~$

ACHTUNG: für Windows-Benutzer

Weil Da der SSH-Client nicht standardmäßig auf der Windows-Plattform verteilt ist, zeigt Vagrant beim Ausführen des Vagrant-Shh-Befehls auf einer Windows-Maschine anstelle eines Terminalfensters ein Fenster mit den notwendigen Informationen an, um über das Shh-Protokoll eine Verbindung zur virtuellen Maschine herzustellen der PuTTY-SSH-Client:

PuTTY erkennt keine Standard-OpenSH-Schlüssel, daher müssen Sie diesen privaten Schlüssel mit dem mit PuTTY gelieferten Dienstprogramm puttygen in das .ppk-Format konvertieren.

D Zugriff auf Projektdateien von einer virtuellen Maschine aus

In einer über Vagrant gestarteten virtuellen Maschine finden Sie ein freigegebenes Verzeichnis, in dem sich Ihre Projektdateien befinden. Dieses Verzeichnis befindet sich auf der virtuellen Maschine unter diesem Pfad: /vagrant . Von der virtuellen Maschine aus steht der Inhalt dieses Verzeichnisses sowohl zum Lesen als auch zum Schreiben zur Verfügung.

UM Bereitstellung für virtuelle Boxen (Provisioning)

Wir haben mit Vagrant eine virtuelle Maschine gestartet, eine Verbindung über ssh eingerichtet und was kommt als nächstes? Für uns als Entwickler stellt diese Maschine kein Interesse dar, denn. Bisher ist außer dem Ubuntu-Betriebssystem nichts darauf installiert. Um unser Webprojekt zu entwickeln, müssen wir aus dem resultierenden virtuellen Maschinenrohling eine vollwertige virtuelle Umgebung erstellen – die genaueste Kopie dessen, was wir auf dem Arbeitsserver haben. Dazu müssen wir die festlegen Software B. Nginx oder Apache, PHP, Ruby, MySQL usw., d. h. unsere virtuelle Box mit dem Notwendigen versorgen Bereitstellung

Für diese Zwecke können Sie mit Vagrant eine von zwei Lösungen verwenden – Chef (Chef-Solo) oder Puppet . Bei Bedarf können Sie Vagrant auch erweitern und andere Tools für die automatisierte Anwendungsbereitstellung verwenden (dies ist jedoch nicht mehr das Thema dieses Artikels).

H Koch- und Landstreicher-Setup

In diesem Artikel verwenden wir Vorgekochte Rezepte für Chefkoch um den Einsatz virtueller Maschinen zu demonstrieren. Bearbeiten Sie dazu die Vgarantfile-Konfigurationsdatei:

Vagrant::Config.run do |config|

config.vm.box="precise32-box"

# Aktivieren und konfigurieren Sie den Chef Solo Provisioner

Config.vm.provision:chef_solo für |chef|

# Wir werden unsere Kochbücher aus dem Internet herunterladen

Chef.recipe_url = "http://files.vagrantup.com/getting_started/cookbooks.tar.gz"

# Sagen Sie dem Koch, welches Rezept er verwenden soll. In diesem Fall das Rezept „vagrant_main“.

# macht die ganze Magie.

Chef.add_recipe("vagrant_main")

Start-up!

Nachdem Sie die Bereitstellung für die virtuelle Maschine eingerichtet haben, führen Sie einfach den Befehl vagrant up aus. Vagarnt startet die virtuelle Maschine aus dem Image und installiert die in den Rezepten vorgeschriebene notwendige Software. Wenn Ihre virtuelle Maschine zu diesem Zeitpunkt bereits ausgeführt wurde und Sie sie nicht ausgeschaltet haben, laden Sie sie einfach mit dem Befehl vagrant reload neu, damit die Änderungen wirksam werden.

Nachdem Vagrant alle erforderlichen Aktionen und Systemeinstellungen abgeschlossen hat, verfügen Sie über einen vollständig konfigurierten Webserver in einer virtuellen Maschine. Allerdings können Sie Ihr darauf befindliches Webprojekt vorerst nicht über einen Browser auf Ihrem Arbeitscomputer sehen, weil. wir haben uns noch nicht eingerichtet Port-Weiterleitung.

Um sicherzustellen, dass unsere einfache Seite bereits funktioniert, können Sie sich per SSH mit der virtuellen Maschine verbinden und Folgendes in die Befehlszeile des SSH-Terminals eingeben:

$ vagrant ssh

[email protected]:~$ wget -qO- 127.0.0.1

Hallo von einer Vagrant-VM

[email protected]:~$

P Port-Weiterleitung

Mit der Portweiterleitung können Sie eine Portnummer auf dem Gastcomputer (in diesem Fall unserer virtuellen Maschine) festlegen, auf die von außen auf dem Hostcomputer (dh auf unserem Arbeitscomputer) zugegriffen werden kann. Dadurch können wir über einen Browser auf unserem Arbeitscomputer auf den auf der virtuellen Maschine installierten Webserver zugreifen.

Z Festlegen der Portnummer für die Weiterleitung

In diesem Fall wollen wir den Port weiterleiten, auf dem der Apache-Server läuft. Die Portweiterleitung wird im Vagrantfile wie folgt konfiguriert:

Vagrant::Config.run do |config|

# Gast-Port 80 an Host-Port 4567 weiterleiten

config.vm.forward_port 80, 4567

Wie Sie sehen können, haben wir die Portweiterleitung von Port 80 (Gast-POSRT) auf der virtuellen Maschine auf Port 4567 (Host-Port) auf unserem Arbeitscomputer eingestellt. Jetzt müssen Sie die virtuelle Maschine mit dem Befehl vagrant up starten oder, wenn sie bereits ausgeführt wird, mit dem Befehl vagrant reload neu starten. Danach können Sie http://127.0.0.1:4567/ in die Adressleiste des Browsers eingeben und unsere Begrüßungsseite wird geöffnet:

Hallo von einer Vagrant-VM

P Verpackung

Wir haben also eine virtuelle Umgebung für unser Webprojekt bereitgestellt. Aber stellen Sie sich die Situation vor, dass Sie nicht allein, sondern Teil eines Teams sind und Ihren Kollegen die gleiche virtuelle Umgebung bieten müssen wie Sie. Was zu tun ist? Vagrant bietet für diesen Fall die Möglichkeit, Pakete (Pakete) der virtuellen Umgebung zu erstellen. Sie geben diese fertigen Pakete an Ihre Kollegen weiter und diese installieren sie auf ihrem Computer.

Pakete sind einbaufertige Abbilder Ihrer virtuellen Umgebung, die schnell auf anderen Computern bereitgestellt werden können. Sie haben normalerweise die Erweiterung .box und werden Boxen genannt. Optional können Sie die Vagrantfile-Konfigurationsdatei selbst in dieses Feld einfügen.

Stellen Sie vor dem Erstellen einer Box sicher, dass Ihre virtuelle Umgebung initialisiert und mit dem Befehl vagrant up gestartet wird.

Erstellen einer VagrantFile

Wir müssen zunächst eine Vagrantfile-Konfigurationsdatei erstellen, die dann in der erstellten Virtualbox abgelegt wird. In dieser Phase ist es wichtig sicherzustellen, dass Ihre virtuelle Umgebung mit dem Befehl vagrant up gestartet wird und der HTTP-Zugriff darauf funktioniert. Jetzt erstellen wir eine Vagrantfile.pkg-Datei, die nur für die erstellte Box als Vagrantfile verwendet wird. Die Datei muss die folgende Konfiguration enthalten:

Vagrant::Config.run do |config|

# Apache weiterleiten

config.vm.forward_port 80, 8080

$ vagrant package --vagrantfile Vagrantfile.pkg

Das Vagrant-Paket nimmt die aktuell laufende virtuelle Umgebung und packt sie in eine package.box im aktuellen Verzeichnis, in dem der Befehl ausgeführt wurde (d. h. im Stammverzeichnis unseres Vagrant-Projekts). Die Option --vagrantfile gibt an, dass die Box eine Vagrantfile.pkg-Datei enthalten soll, damit die Portweiterleitung automatisch durchgeführt wird, wenn sie auf einem anderen Computer bereitgestellt wird (siehe).

Die erstellte Box kann nun an ein anderes Teammitglied weitergegeben werden, damit dieser sie auf seinen Arbeitsrechner kopiert und installiert oder ins Internet stellt, anschließend kann sie dann einfach auf den gewünschten Rechner heruntergeladen und ausgeführt werden. Boxen wird auf einem anderen Computer wie folgt gestartet:

$ vagrant box fügt my_box /path/to/box/package.box hinzu

$ vagrant init my_box

$ Landstreicher auf

Nachdem Sie diese Befehle ausgeführt haben, verfügt ein anderes Mitglied Ihres Teams über eine betriebsbereite virtuelle Umgebung (eine exakte Kopie Ihrer virtuellen Umgebung).

UM Installation virtueller Boxen (Teardown)

Um eine laufende virtuelle Umgebung in Vagrant zu beenden S uspend – in den Ruhezustand wechseln und dabei den aktuellen Status des Systems speichern

Das Herunterfahren im Ruhezustand erfolgt mit dem Befehl vagrant suspend. Dadurch wird der aktuelle Zustand der virtuellen Umgebung gespeichert und anschließend deren Arbeit beendet. Um die Arbeit fortzusetzen, führen Sie einfach den Befehl „vagrant resume“ aus.

Der Hauptvorteil dieses Shutdown-Modus besteht darin, dass die Wiederaufnahme der Arbeit sehr schnell erfolgt, schneller als bei allen anderen Shutdown-Modi. Der vorherige Zustand der virtuellen Maschine wird gespeichert. Dieser Modus erfordert jedoch zusätzlichen Festplattenspeicher – etwa 1 GB, um den Systemstatus zu speichern.

H alt – normales Herunterfahren

Dieses Herunterfahren wird durch den Befehl vagrant halt durchgeführt. Dies führt das übliche Herunterfahren durch (wie in einem normalen Linux-System beim Ausführen des Halt-Befehls). Um die virtuelle Umgebung nach einem solchen Herunterfahren wieder aufzunehmen, müssen Sie den Befehl vagrant up ausführen.

Mit dieser Fertigstellung ist kein zusätzlicher Speicherplatz erforderlich, weil. Der Systemstatus wird nicht gespeichert. Die Wiederaufnahme der Arbeit dauert in diesem Fall etwas länger als im vorherigen Fall, weil. Die virtuelle Umgebung startet so, als würde sie einen normalen Computer starten.

D estroing – Herunterfahren mit Bereinigung aller Boxdateien

Die letzte Möglichkeit schließlich ist die dritte Möglichkeit, die virtuelle Umgebung auszuschalten. Wird vom Vagrant-Zerstörungsbefehl ausgeführt. Gleichzeitig wird die Arbeit mit einer vollständigen Bereinigung des von der virtuellen Umgebung belegten Speicherplatzes abgeschlossen. Um die Arbeit fortzusetzen, müssen Sie wie im vorherigen Fall auch den Befehl vagarnt up ausführen.

Der Hauptvorteil dieser Methode besteht darin, dass Sie bis zu 1 GB Festplattenspeicher einsparen. Aber gleichzeitig wird die Wiederaufnahme der Arbeit der längste Prozess sein, denn. „Vagrant“ wird die gesamte erforderliche Software aus den Rezepten neu installieren. Es wird normalerweise nicht empfohlen, diese Methode zum Herunterfahren zu verwenden, es sei denn, Sie versuchen um jeden Preis Speicherplatz auf der Festplatte zu sparen, was angesichts der aktuellen Größe modern ist Festplatte ein äußerst seltenes Bedürfnis.

B schneller Wiederaufbau

Nehmen wir folgende Situation an: Sie haben die Arbeit am Projekt abgeschlossen, es an den Kunden übergeben und die Zahlung erhalten. Ein halbes Jahr ist vergangen, ein Jahr, und nun sagt Ihnen der Chef, dass Sie die Arbeit am Projekt für diesen Kunden wieder aufnehmen müssen. Während dieser Zeit könnte sich auf Ihrem funktionierenden Computer eine Menge verändert haben, Sie haben das Betriebssystem abgerissen und neu installiert, die Software aktualisiert, aber was könnte sonst noch passieren?

Machen Sie sich keine Sorgen! Alles, was Sie tun müssen, um die Arbeit am Projekt fortzusetzen, ist, Virtualbox einfach mit dem Befehl vagrant up neu zu starten. Das ist alles. In fünf Minuten, vielleicht mehr oder weniger, wenn Vagrant die virtuelle Maschine startet und die gesamte erforderliche Software installiert, können Sie sicher mit der Entwicklung Ihres alten Projekts beginnen.

  • Verfügbare Vagrant-Boxen – verfügbare Vagrant-Bilder
  • www.vagrantbox.es – mehr Vagrant-Bilder

Letztes Mal habe ich mir angesehen, was Vagrant ist und wie es für uns nützlich sein kann. Für diejenigen, die noch nie damit gearbeitet haben, werden jedoch all diese Befehle, eine Art Einstellungsdatei ... Kurz gesagt, das alles wird wie Ketzerei erscheinen. Daher möchte ich zusätzlich zum vorherigen Beitrag zu Vagrant einige Kommentare hinzufügen, um bestimmte Fragen zu klären.

Es ist wichtig zu verstehen, dass dieser Artikel KEIN Ersatz für die Offline-Dokumentation ist. Vagrant befindet sich wie jedes andere Projekt in der Entwicklung, daher sind die hier präsentierten Informationen möglicherweise in einem Monat nicht mehr relevant. Beim Wechsel von Version 1.4 auf 1.5 wurde beispielsweise die Syntax einiger Befehle geändert (z. B. derselbe vagrant add box ). Holen Sie sich also zunächst aktuelle Informationen von hier, ich werde nur einige erläutern Einzelheiten.

Boxen

Es handelt sich um Vorlagen für den Aufbau Ihres Standes. Grundlegende Informationen in d Ich werde eine trockene Exposition zum Betrieb geben und die Haube ihres Geräts leicht anheben)

Also, was ist Boxen? Dies ist ein spezielles Paket für Vagrant, das eine bereits vorbereitete km-Instanz (installiert und vorkonfiguriert) einer virtuellen Maschine in sich hineinzieht. Wie ich bereits geschrieben habe, ist das Haupt-Repository von Boxen die Cloud-Ressource vagrant Creators: https://app.vagrantup.com/boxes/search. Wir müssen ein paar Worte zu den Namensräumen in der Vagrant-Cloud sagen. Normalerweise hat der Name der Box die Form „Namensraum/Boxname“, wobei der zweite Teil der Name der Box ist, der uns normalerweise sagt, um welche Art von Assembly es sich handelt (zum Beispiel ist „trusty64“ 64-Bit-Ubuntu 14.04) und Der erste Teil ist, wer die Versammlung gepostet hat. Zum Beispiel:

  • hashicorp – Builds von den Machern von Vagrant
  • Ubuntu – Box-Builds von Canonical mit eigenem Betriebssystem

Auf diese Weise können wir die Box mit Ubuntu sowohl von seinen Entwicklern als auch von Vagrant-Entwicklern verwenden. Was ist dann der Unterschied? Nun, erstens ist es die „Frische“ des Bildes. Die Spalte ganz rechts zeigt, wie lange es her ist, dass das Bild veröffentlicht/aktualisiert wurde. Zweitens enthält die mittlere Spalte Informationen darüber, für welche Virtualisierungstools diese Box geeignet ist (Virtualbox, VMware, AWS usw.).

In diesem Fall empfehlen die Macher von vagrant, auf die Boxen aus dem Bento-Projekt zu achten. Sie sagen, dass Hashicorp-Boxen mit Schwerpunkt auf VMware und VirtualBox erstellt werden, sie enthalten die minimalsten Images desselben Ubuntu, und Bento kann beispielsweise in Boxen für Paralels gefunden werden. Kurz gesagt: Abwechslung schadet nicht.

Das Hauptwerkzeug für die Arbeit mit Boxen (Trommelwirbel) ist das Dienstprogramm Vagrant Box!

Welche Optionen müssen wir zuerst beherrschen:

  • Vagrant-Box hinzufügen – Fügen Sie eine Box zu Ihrer lokalen Liste der verfügbaren Vorlagen hinzu. Tatsächlich wird die angegebene Box auf Ihren Computer heruntergeladen und steht anschließend zur Verwendung zur Verfügung.
  • Vagrant-Box-Liste – Zeigt eine Liste aller Boxen auf Ihrem Computer an, einschließlich Informationen zu deren Versionen
  • Vagabund-Box entfernen - Box entfernen
  • Vagrant Box Update – Aktualisieren Sie die Box

Jeder Befehl verfügt über einen eigenen Satz an Optionen, die entweder in der Online-Dokumentation oder über die Option -h im Befehl selbst zu finden sind

Schauen wir uns ein Beispiel an: Ich möchte wissen, wie viele und welche Bilder ich habe, und gleichzeitig die alten / unnötigen usw. bereinigen. Gesagt, getan:

Also gab ich den Befehl, alle Boxen zu aktualisieren, die ich hatte, woraufhin die Lixt-Option anzeigte, dass ein Update für Xenial64 eingetroffen war. Da ich die alte Box nicht behalten möchte, gebe ich den Befehl, sie zu entfernen. Das Löschen schlägt fehl, da ich zwei Boxen mit diesem Namen habe und das Programm mich auffordert, anzugeben, welche Version der Box ich löschen möchte. Danach passiert alles wie es soll. Um alte Bilder zu entfernen, gibt es außerdem einen Vagrant-Box-Prune-Befehl.

Das Hinzufügen eines Bildes ist ganz einfach: Sie geben den Befehl „vagrant box add“ ein und geben dabei den Namen der Box mit ihrem Namensraum als Parameter oder (wenn die Box nicht in der Vagrant-Cloud angelegt ist) die URL zu ihrem Speicherort an:

Es wäre schön zu wissen, was diese Boxen eigentlich sind. Lass uns einen Blick darauf werfen!

Unter Linux (insbesondere Ubuntu) wird in Ihrem Home-Verzeichnis ein verstecktes Verzeichnis „.vagrant.d/“ erstellt, in dem die Boxen gespeichert werden:

Was wir dort sehen:

  1. box.ovf – Informationen zur VM-Konfiguration, entladen (z. B. mit Virtualbox beim Erstellen/Exportieren) im sogenannten. Offenes Virtualisierungsformat.
  2. *name*.vmdk ist eine Festplattendatei, die ein Image des installierten Betriebssystems im VMware-Format enthält.
  3. metadata.json – eine JSON-Datei mit einer Beschreibung, für welchen Virtualisierungsanbieter dieses Feld gedacht ist. Der Inhalt wird höchstwahrscheinlich sein: („Anbieter“: „virtuelle Box“), was besagt, dass die Box nur für die Verwendung mit Virtualbox vorgesehen ist
  4. Vagrantfile – Eine Vagrant-Datei mit einer grundlegenden Beschreibung der Umgebung, die bei der Bereitstellung der Box erstellt wird.

Das ist alles mit den Grundlagen auf den Boxen, wenn noch etwas auftaucht, werde ich versuchen, diesen Abschnitt des Artikels zu aktualisieren.

Vagrantfile

Diese Datei ist also der zentrale Teil Ihrer gesamten Infrastruktur, Ihrer Arbeit mit Vagrant. Im Wesentlichen ist „Projekt in Vagrant“ = Vagrntfile und umgekehrt, Vagrntfile = „Projekt in Vagrant“. Die Datei enthält eine detaillierte (soweit erforderlich) Beschreibung der in Ihrem Projekt verwendeten virtuellen Maschinen. Ja, ja, wie wir letztes Mal gesehen haben, kann Vagrantfile die Beschreibung von mehr als einer VM enthalten. Grundlegende Informationen zu . Auch hier werde ich mich auf die Hauptpunkte konzentrieren.

Niemand hindert Sie daran, diese Datei manuell zu erstellen. Zu diesem Zweck gibt es jedoch einen vagrant ini t-Befehl, der bei Ausführung im für das Projekt vorgesehenen Verzeichnis eine Vagrant-Datei mit einigen Standardinhalten und Anwendungsbeispielen erstellt, zum Beispiel:

Wenn Sie die Kommentardatei löschen, erhalten Sie etwa Folgendes:

Tatsächlich ein sehr minimalistisches Werkstück. Wenn wir vagrant init ubuntu/xenial64 verwenden, also die Zielbox angeben, erhalten wir folgenden Inhalt:

Der Inhalt unterscheidet sich nicht wesentlich, aber wir können sehen, dass ein bestimmtes Vorlagenfeld ausgewählt ist. Den gesamten Satz verfügbarer Optionen für die Vagrantfile-Konfiguration finden Sie im entsprechenden Abschnitt der Dokumentation. Ich werde das zuvor gezeigte Beispiel analysieren. Ich werde es noch einmal als Beispiel geben, damit ich es später Punkt für Punkt analysieren kann:

Nehmen wir nun den ersten Teil der Konfigurationsdatei als Grundlage. Ich habe es optisch in 4 Farbabschnitte unterteilt – Rot, Orange, Grün und Blau:

Jeder Abschnitt beginnt mit dem Schlüsselwort config.* und endet mit dem Schlüsselwort end. Tabulatoren sind optional, aber ich verwende sie, um das Verständnis der Struktur der Datei zu erleichtern.

in rot hervorgehobene Überschrift „global“ – dies sind Optionen, die für das gesamte Projekt gelten. Wenn Sie möchten, kann jeder von ihnen auf der Konfigurationsebene einer bestimmten virtuellen Maschine überschrieben werden. Sie können beispielsweise angeben, dass Sie über eine Standardbox verfügen – den Ubuntu-Server (wie hier – angegeben). config.vm.box="ubuntu/xenial64"), aber auf einer Maschine möchten Sie Centos oder Redhat oder Debian. Dann verwenden VMs, für die in der Option config.vm.box nichts angegeben ist, ubuntu/xenial64, und VMs, die über eine eigene Box-Option verfügen, verwenden etwas anderes.

Weiter, orange Der Abschnitt, der für die Identifizierung der VM verantwortlich ist, ist hervorgehoben, d. h. Festlegen des Anzeigenamens (Hostname in den Betriebssystemeinstellungen – in diesem Fall). *.vm.hostname = "Webserver"), Typ und Adresse Netzwerkadapter, der Name der Box, die verwendet werden soll (wenn wir nicht die zuvor im globalen Kontext definierte Box verwenden möchten).

in grün Der Abschnitt, der für die Einrichtung des virtuellen Anbieters verantwortlich ist, wird hervorgehoben. Sein Typ, der Name, der in seiner Benutzeroberfläche angezeigt wird, die Anzahl der Kerne und das Volumen werden angezeigt Arbeitsspeicher VM.

Und endlich in Blau Der Abschnitt der beim Start des Gastbetriebssystems ausgeführten Befehle ist hervorgehoben. Mit t.z. Struktur der Vagrant-Datei, sie besteht aus einer Option und gehört zum orangefarbenen Abschnitt, jedoch mit einer ideologischen t.z. Ich habe beschlossen, es zu trennen. Vagrant selbst kann beim Erstellen und Starten einer VM eine Reihe beliebiger Befehle ausführen und so Ihre Aktionen in der Primärkonfiguration der Maschine automatisieren und Ihnen Routineaufgaben abnehmen. Alles dazwischen Schlüsselwörter SHELL wird als Root in der Befehlszeile des Gastbetriebssystems ausgeführt.

Ordnerverbindung und SSH-Zugriff

Durch diese Automatisierung der VM-Bereitstellung sind die Vorteile von Vagrant nicht eingeschränkt! Nachdem Sie zunächst eine VM mit dem Befehl „vagrant up“ erstellt haben, können Sie mit dem Befehl „vagrant ssh *machive name*“ automatisch über SSH von Ihrem Hauptcomputer aus eine Verbindung zu ihr herstellen – es sind keine Adressen, keine Anmeldungen, keine Passwörter erforderlich! Darüber hinaus starten Sie eine Befehlsshell unter als Wurzel Dies geschieht auch ohne Passwortbestätigung (tatsächlich gibt es hier keine Magie, Vagrant bereitet die Autorisierung einfach mithilfe von SSH-Schlüsseln vor).

Eine weitere nette Nuance (sowohl für den Entwickler als auch für den Administrator) ist die Tatsache, dass beim Start der VM der Projektordner automatisch im Verzeichnis /vargrant/ (im Stammverzeichnis des Gastbetriebssystems fs) bereitgestellt wird. Wenn Sie also Ihren Code oder Ihre Skripte überprüfen möchten, müssen Sie diese nicht auf Ihrem Computer bearbeiten, sie dann auf VM übertragen und dort ausführen – platzieren Sie sie einfach im Projektordner und sie werden sofort im Space angezeigt Dateisystem Gastbetriebssystem. Gleichzeitig können Sie von Ihrem Hauptbetriebssystem aus einfach und bequem damit weiterarbeiten. Weitere Informationen zur Option zum Verbinden von Verzeichnissen (zum Beispiel ein anderes Verzeichnis oder mehrere gleichzeitig verbinden) können Sie auch in der Vagrant-Dokumentation lesen.

Das ist alles für heute, ich warte auf Ihre Fragen!

Markiert ,

Ich möchte sofort den Begriff VM bezeichnen – eine virtuelle Maschine, das ist (Gastmaschine).

1. Zunächst benötigen wir eine bereits installierte Achse, diese können Sie auf der Website vagrantcloud.com registrieren und dann auswählen Entdecken Finden Sie die gewünschte BOX. Aber ich vertraue den BOXen anderer Leute nicht und werde meine eigenen machen. Laden wir daher beispielsweise die ISO-Distribution herunter debian . Jetzt benötigen wir VirtualBox (wenn Sie es nicht haben, dann installieren Sie es), in das wir die heruntergeladene Debian.ISO einbinden und mit der Installation fortfahren.

2. Sie haben den Debian-Installationsprozess gestartet, bei dem Sie aufgefordert werden, verschiedene Daten einzugeben Schlüsselmoment, Weil Vagrant-Entwickler stellten vor:

  • Hostname: vagrant-, zum Beispiel: vagrant- debian-wheezy-86
  • Domain: vagrantup.com
  • Root-Passwort: vagrant
  • Hauptkonto-Login: vagrant
  • Passwort des Hauptkontos: vagrant

a) Sie müssen einen SSH-Server auf der VM installieren:

sudo apt-get install openssh-server

sonst wird Vagrant so schwören:

Verbindung zur VM fehlgeschlagen!
Es konnte keine Verbindung zur VM über SSH hergestellt werden. Bitte überprüfen Sie, ob die VM erfolgreich gestartet wurde
indem Sie sich die VirtualBox-GUI ansehen.

b) Es stellt sich heraus, dass wir trotz der Tatsache, dass wir einen Vagrant-Benutzer erstellt und allen Benutzern ein Vagrant-Passwort zugewiesen haben,MÜSSENDie Verwendung von SSH-Schlüsseln ist zweifellos dumm, aber was kann man tun?In der Vagranta-Community besteht eine Vereinbarung darüber, dass Vagrant einen privaten Schlüssel verwendet, um sich mit der VM zu verbindenhttps://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant Und wir müssen dem vagrant-Benutzer in der VM einen öffentlichen Schlüssel hinzufügenhttps://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub in seinem ~/.ssh/authorized_keys. Wenn dies nicht geschieht, dannVagrant schwört so:

SSH-Authentifizierung fehlgeschlagen! Dies wird typischerweise durch den öffentlichen/privaten Bereich verursacht
Das Schlüsselpaar für den SSH-Benutzer ist auf der Gast-VM nicht richtig eingestellt. Bitte
Stellen Sie sicher, dass die Gast-VM mit dem richtigen öffentlichen Schlüssel eingerichtet ist
Der private Schlüsselpfad für Vagrant ist ebenfalls ordnungsgemäß eingerichtet.

c) (vielleicht nicht notwendig) Beginnen wir nun mit der Installation der Gastzusätze für die virtuelle Box. Für dieses n Sie müssen einige Header-Pakete installieren:

sudo apt-get -y install linux-headers-$(uname -r) build-essential dkms

Fahren Sie die VM herunter und Wählen Sie im VirtualBox-Fenster „Geräte“ und „Gastzusätze installieren“. Dadurch werden „Guest Additions“ an Ihren VM-Seed angehängt. Jetzt müssen Sie nur noch die VM einschalten, sie mit Cider mounten und „Guest Additions“ installieren.

sudo apt-get -y install linux-headers-$(uname -r) build-essential
mkdir /media/cdrom
Mounten Sie /dev/cdrom /media/cdrom
sudo sh /media/cdrom/VBoxLinuxAdditions.run

d) (vielleicht nicht notwendig) Aus irgendeinem Grund erstellen wir eine Admin-Gruppe, deren Benutzer sich meines Wissens über SSH ohne Passwort anmelden dürfen:

adduser vagrant admin

Sudo ist in Debian nicht standardmäßig installiert, daher muss ich es in meinem Fall installieren:

und führen Sie das Programm zum Bearbeiten der Datei /etc/sudoesr aus

öffnet Standard Texteditor(in meinem Fall nano) und ganz am Ende der Datei müssen Sie Folgendes hinzufügen:

Standardwerte env_keep="SSH_AUTH_SOCK" %admin ALL=NOPASSWD: ALLE Standardwerte:vagrant !requiretty

3. Beim Erstellen einer VM (virtuellen Maschine) habe ich ihr einen Namen gegebendebian-wheezy-86bzw. in meinem Verzeichnis, in dem VirtualBox installiert ist, wurde ein Verzeichnis erstelltdebian-wheezy-86Lass uns da hin gehen:

cd /home/programs/VirtualBox

4. Installieren Sie Vagrant

sudo apt-get install vagrant

5. Sie können mit der Erstellung der Vagrant BOX beginnen:

Vagrant-Paket --base debian-wheezy-86

und nach einer Minute erhalten wir das Dateipaket. Kasten

6. T Jetzt müssen wir Vagrant von dieser Box erzählen:

vagrant box füge debian-wheezy-86 package.box hinzu

Syntax : vagrant box NAME FILE.box hinzufügen

7. Sie können das Debian-Installationsverzeichnis entfernen:

rm -rf /home/programs/VirtualBox/debian-wheezy-86

8. Erstellen und konfigurieren Sie das Vagrant-Projekt

mkdir vagrant_getting_started
cd vagrant_getting_started
vagrant init

8. Schreiben Sie die erforderlichen Einstellungen in die Vagrant-Datei

# der Name der virtuellen Maschine, die wir verwenden werden
config.vm.box = "debian-wheezy-86"

# damit Sie das Laden der virtuellen Maschine verfolgen können
config.vm.boot_mode = :gui

# Diese IP kann verwendet werden, um zur virtuellen Maschine zu gelangen
config.vm.network:hostonly, „11.11.11.11“

# Portweiterleitung (auf Port 8080 vom Host-Rechner gelangen wir zu Port 80 des Gast-Rechners)
config.vm.forward_port 80, 8080

# Geben Sie den Ordner frei. Reihenfolge der Argumente: Bezeichner, Verzeichnis auf dem Gastrechner, Verzeichnis auf dem Hostrechner
config.vm.share_folder „myShareFolder“, „/var/www“, „./“

9. Starten Sie das Auto:

und es sieht so aus:

$ Landstreicher auf
VM bereits erstellt. Booten, falls es noch nicht läuft ...
Alle zuvor festgelegten weitergeleiteten Ports werden gelöscht...
Ports weiterleiten...
-- 22 => 2222 (Adapter 1)
-- 80 => 8080 (Adapter 1)
Metadaten für freigegebene Ordner werden erstellt...
Alle zuvor festgelegten Netzwerkschnittstellen werden gelöscht...
Vorbereiten von Netzwerkschnittstellen basierend auf der Konfiguration ...
VM wird gestartet...
Warten auf VM zum Booten. Das kann ein Paar Minuten dauern.
VM gestartet und einsatzbereit!
Netzwerkschnittstellen konfigurieren und aktivieren...
Freigegebene Ordner werden bereitgestellt...
-- v-root: /vagrant
-- myShareFolder: /var/www
$

Landstreicher ist ein Tool zum Erstellen und Verwalten virtueller Maschinen mithilfe von Virtualisierungstechnologie.

Mit einem benutzerfreundlichen Algorithmus und Prozessautomatisierung reduziert Vagrant den Zeitaufwand für die Einrichtung und Optimierung der Umgebung, in der Sie arbeiten. Lass uns gehen.

Installation für Windows

Installation Landstreicher selbst ist sehr einfach, Sie müssen den Client von der offiziellen Website herunterladen Betriebssystem, das Sie verwenden möchten, und starten Sie den Installationsvorgang. Für die Arbeit Landstreicher muss auch heruntergeladen werden virtuelle Box von der offiziellen Website.

virtuelle Box Hypervisor, der den Virtualisierungsprozess durchführt (oops, Tautologie) Linux-Systeme, macOS, Windows und mehr. Software Installation Virtualbox, wie er selbst Landstreicher ist einfach und wird Ihnen keine Fragen und Probleme bereiten. Sobald Sie die beiden Programme installiert haben, wird empfohlen, Ihr System neu zu starten.

Öffnen Sie nach der Installation eine Eingabeaufforderung und prüfen Sie die Verfügbarkeit Landstreicher mit den folgenden Codezeilen:

$ vagrant Verwendung: vagrant -v, --version Gibt die Version aus und beendet den Vorgang. -h, --help Diese Hilfe drucken. # ...

Der erste Schritt beim Einrichten einer virtuellen Maschine mit Vagrant ist das Erstellen Vagrantfile , das alle notwendigen Einstellungen enthält. Geben Sie den folgenden Befehl ein:

mkdir vagrant_demo && cd vagrant_demo vagrant init ubuntu/trusty64

Vagrantfile ist eine Datei Rubin, in dem beschrieben wird, wie eine virtuelle Maschine eingerichtet und bereitgestellt wird.

Anstatt jedoch eine virtuelle Maschine von Grund auf zu erstellen, bietet Ihnen die Software die Möglichkeit, die Basis-Images zu verwenden. Vorlagen" der virtuellen Maschine. Diese Basis-Images in Vagrant werden aufgerufen Landstreicher-Box, die mithilfe des Tools zum Hinzufügen von Vagrant-Boxen zu Vagrant hinzugefügt werden. Dieses speichert die Vagrant-Box unter einem bestimmten Namen und ermöglicht so die Wiederverwendung in mehreren Umgebungen. Cool, nicht wahr?

$ vagrant box hashicorp/precise64 hinzufügen

Mit diesem Befehl können Sie das fertige herunterladen Landstreicher-Box mit dem Titel „hashicorp/precision64“ aus dem Katalog Vashgrant Cloud , bereitgestellt von Entwicklern für den Austausch vorgefertigter Bilder. Es ist auch zu beachten, dass es möglich ist, Bilder aus lokalen Dateien oder einer benutzerdefinierten URL hinzuzufügen.

„Boxen“ werden für jeden Benutzer separat gespeichert. Jedes Projekt Landstreicher-Box erstellt eine neue Kopie der „Box“ und verändert niemals das Originalbild. Dies bedeutet, dass Sie zwei Projekte haben, die dasselbe Bild verwenden Landstreicher-Box hashicorp/precision64: Das Hinzufügen von Dateien auf einer virtuellen Maschine hat keine Auswirkungen auf eine andere.

Wenn Landstreicher-Box hinzugefügt zu Landstreicher, können Sie es anpassen, um es als Basis zu verwenden. Öffnen Sie Vagrantfile und ändern Sie den Inhalt wie folgt:

Vagrant.configure("2") führt |config| aus config.vm.box = „hashicorp/precise64“ Ende

Sie können die „Box“-Version angeben, indem Sie angeben config.vm.box_version, Zum Beispiel:

Vagrant.configure("2") führt |config| aus config.vm.box="hashicorp/precise64" config.vm.box_version="1.1.0" Ende

Es ist auch möglich, eine URL mit anzugeben config.vm.box_url :

Vagrant.configure("2") führt |config| aus config.vm.box = "hashicorp/precise64" config.vm.box_url = "https://vagrantcloud.com/hashicorp/precise64" Ende

Wir laden die erste virtuelle Vagrant-Maschine und geben den Befehl ein: $ vagrant up

Innerhalb einer Minute ist dieser Befehl abgeschlossen und die virtuelle Ubuntu-Maschine wird für Sie gestartet. Der Downloadvorgang sieht in etwa so aus:

Um zu überprüfen, ob es funktioniert, verbinden Sie SSH mit der virtuellen Maschine: $ vagrant ssh .

Dieser Befehl versetzt Sie in eine vollständige SSH-Sitzung. Jetzt haben Sie die Möglichkeit, mit der virtuellen Maschine zu interagieren. Eine SSH-Sitzung kann mit einer Tastenkombination beendet werden STRG+D.

[email protected]:~$ logout Verbindung zu 127.0.0.1 geschlossen.

Am Ende der Arbeit mit der virtuellen Maschine sollten Sie den Befehl ausführen Landstreicher zerstören und Vagrant wird die Nutzung aller von der VM verbrauchten Ressourcen einstellen.

Installation unter Ubuntu:

Installieren Sie Virtualbox, das übrigens sofort in den Ubuntu-Repositories verfügbar ist: > sudo apt install virtualbox

Beratung: Es ist zu beachten, dass Vagrant und Virtualbox, die in den Ubuntu-Repositories verfügbar sind, möglicherweise nicht die meisten sind aktuelle Version, zum Installieren letzte Version Laden Sie diese Programme von den offiziellen Websites der Entwickler herunter.

Um zu überprüfen, ob die Installation erfolgreich war, können wir die Version des Vagrant-Programms mit dem folgenden Befehl überprüfen: vagrant --version

Sie sollten etwa Folgendes sehen: Vagrant 2.0.2

Nachdem wir sichergestellt haben, dass Vagrant auf dem Ubuntu-System installiert ist, können wir eine Entwicklungsumgebung erstellen, was der häufigste Anwendungsfall für dieses Programm ist.

Der erste Schritt besteht darin, ein Verzeichnis zu erstellen, das das Stammverzeichnis des Projekts sein wird. Und wir erstellen eine Vagrant-Datei.

Erstellen Sie ein Projektverzeichnis und wechseln Sie dorthin:

Mkdir ~/my-first-vagrant-project cd ~/my-first-vagrant-project

Der nächste Schritt besteht darin, eine neue Vagrant-Datei mit dem Befehl vagrant init zu initialisieren. In diesem Beispiel haben wir CentOS 7. Führen Sie den folgenden Befehl aus, um eine neue Vagrantfile zu initialisieren:

Vagrant init centos/7

In diesem Verzeichnis wurde eine „Vagrantfile“ abgelegt. Sie sind jetzt bereit, Ihre erste virtuelle Umgebung einzurichten! Bitte lesen Sie die Kommentare in der Vagrant-Datei sowie die Dokumentation auf „vagrantup.com“, um weitere Informationen zur Verwendung von Vagrant zu erhalten.

Indem wir Vagrant ausführen, können wir die Umgebung gemäß der Vagrant-Datei erstellen und konfigurieren.

Vagrant up ==> Standard: Netzwerkschnittstellen konfigurieren und aktivieren... Standard: SSH-Adresse: 192.168.121.74:22 Standard: SSH-Benutzername: Vagrant Standard: SSH-Authentifizierungsmethode: privater Schlüssel ==> Standard: Rsyncing-Ordner: /home/ linuxize/Vagrant/my-first-vagrant-project/ => /vagrant

Wie Sie den obigen Informationen entnehmen können, fügt Vagrant das Projektverzeichnis auch in /vagrant auf der virtuellen Maschine ein, sodass Sie mit Ihren Projektdateien auf Ihrer Hostmaschine arbeiten können.

Um die Umgebung zu betreten, starten Sie sie einfach mit dem Befehl:

Landstreicher ssh

Die Umwelt stoppen:

Landstreicher-Halt

Die folgende Zeile stoppt die Umgebung und bereinigt außerdem alle Informationen, die für den Betrieb erforderlich waren:

Landstreicher zerstören

Dank unseres Artikels haben Sie den Prozess der Installation und Konfiguration einer virtuellen Maschine auf Ihrem Computer gesehen Windows oder Ubuntu 18.04 Außerdem zeigt der Artikel anschaulich den Prozess der Erstellung und Konfiguration einer virtuellen Maschine. Profitieren!

Ist dieser Artikel hilfreich für Sie?

Bitte erzähle mir warum?

Es tut uns leid, dass der Artikel für Sie nicht nützlich war: (Wenn es nicht schwierig ist, geben Sie bitte den Grund an? Für eine ausführliche Antwort sind wir Ihnen sehr dankbar. Vielen Dank, dass Sie uns dabei geholfen haben, besser zu werden!