Heimstätte
Laravel Homestead
- Einführung
- Installation und Einrichtung
- Täglicher Gebrauch
- Netzwerkschnittstelle
- Extended Homestead
- Aktualisiert Homestead
- Besondere Einstellungen für Anbieter
Einführung
Laravel setzt sich dafür ein, die gesamte PHP-Entwicklungserfahrung, einschließlich Ihrer lokalen Entwicklungsumgebung, angenehmer zu gestalten. Vagrant bietet eine einfache und elegante Möglichkeit, virtuelle Hosts zu verwalten und zu konfigurieren.
Laravel Homestead ist eine offizielle vorgefertigte Vagrant-Box, die Ihnen eine perfekte Entwicklungsumgebung bietet. Sie müssen weder PHP noch einen Webserver oder andere Serversoftware auf Ihrem lokalen Computer installieren. Sie müssen sich nie wieder Sorgen machen, dass Ihr Betriebssystem kaputt geht! Vagrant-Boxen sind Einwegartikel. Wenn etwas schief geht, können Sie die Box in wenigen Minuten zerstören und neu erstellen!
Homestead kann auf jedem Windows-, Mac- oder Linux-System ausgeführt werden und umfasst Nginx-Webserver, PHP 7.3, PHP 7.2, PHP 7.1 und MySQL , PostgreSQL, Redis, Memcached, Node und alles, was Sie zum Entwickeln mit Laravel benötigen.
GitPHP 7.2PHP 7.1Nginx{note} Wenn Sie Windows verwenden, müssen Sie möglicherweise die Hardwarevirtualisierung (VT-x) über das BIOS aktivieren. Wenn Sie UEFI auf einem Hyper-V-System verwenden, müssen Sie möglicherweise auch Hyper-V deaktivieren, um auf die integrierte Software von VT-x zuzugreifen 18.04
- Apache (Optional)MySQLMariaDB (Optional)Sqlite3PostgreSQLComposerNode (With Garn, Bower, Grunt und Gulp)RedisMemcachedBeanstalkdMailhogNeo4j (Optional)MongoDB (Optional) Elasticsearch (Optional)ngrokwp-cliZend Z-RayGoMinioInstallation & Einrichtung
Aufgrund von Vagrant-Einschränkungen ignoriert der Hyper-V-Anbieter alle Netzwerkeinstellungen.
Homestead Vagrant Box installierenSobald VirtualBox / VMware und Vagrant installiert sind, können Sie den folgenden Befehl im Terminal ausführen, um die-Box zur installierten Vagrant-Box hinzuzufügen In. Das Herunterladen der Box kann einige Minuten dauern, da dies von der Geschwindigkeit Ihrer Internetverbindung abhängt:
vagrant box add laravel/homestead
Wenn dieser Befehl fehlschlägt, stellen Sie sicher, dass Sie die neueste Version von Vagrant installiert haben.
Homestead installieren
Sie können Homestead installieren, indem Sie den Code klonen. Es wird empfohlen, den Code in den Ordner Homestead
in Ihrem „Home“-Verzeichnis zu klonen, damit die Homestead-Box als Host für alle Ihre Laravel-Projekte dienen kann:
git clone https://github.com/laravel/homestead.git ~/Homestead
Denn der Hauptzweig von Homestead ist nicht stabil , sollten Sie getaggte Stable-Releases verwenden. Die neueste stabile Version finden Sie auf der GitHub-Release-Seite::
cd ~/Homestead// 克隆期望的发行版本...git checkout v8.0.1
Sobald das Klonen des Homestead-Codes abgeschlossen ist, verwenden Sie den Befehl bash init.sh
im Homestead-Verzeichnis, um den <🎜 zu erstellen > Konfigurationsdatei. Homestead.yaml
Dateien werden im Homestead-Verzeichnis abgelegt: Homestead.yaml
// Mac / Linux...bash init.sh// Windows...init.batHomestead konfigurieren Anbieter festlegen
Der Parameter Homestead.yaml
in der Datei bestimmt, welchen Vagrant-Anbieter Sie verwenden: provider
, virtualbox
, vmware_fusion
, vmware_workstation
und parallels
. Sie können sie nach Ihren Wünschen einrichten:hyperv
provider: virtualboxFreigegebene Ordner konfigurierenDas Ordnerattribut der Homestead.yaml-Datei listet alle mit der Homestead-Umgebung freigegebenen Ordner auf Ordner. Wenn sich die Dateien in diesen Ordnern ändern, bleiben sie zwischen dem lokalen Computer und der Homestead-Umgebung synchron. Sie können beliebig viele freigegebene Ordner konfigurieren:
folders: - map: ~/code to: /home/vagrant/codeDiese allgemeine Zuordnung funktioniert gut, wenn Sie nur wenige Websites erstellen. Da jedoch die Anzahl der Websites weiter zunimmt, kann es zu Leistungsproblemen kommen. Dieses Problem kann auf leistungsschwachen Rechnern oder Projekten mit einer großen Anzahl von Dateien sehr auffällig sein. Wenn dieses Problem auftritt, versuchen Sie, jedes Projekt einem eigenen Vagrant-Ordner zuzuordnen:
folders: - map: ~/code/project1 to: /home/vagrant/code/project1 - map: ~/code/project2 to: /home/vagrant/code/project2Um
folders: - map: ~/code to: /home/vagrant/code type: "nfs"
{note} Wenn Sie NFS verwenden, verwenden Sie besserSie können Vagrantsvagrant-winnfsd Erweiterungs-Plugin. Dieses Plugin kümmert sich für Sie um Datei- oder Verzeichnisberechtigungsprobleme in der Homestead-Box.
Freigegebene Ordneroptions
auch auflisten, indem Sie eine der in unterstützten Optionen auflisten:
folders: - map: ~/code to: /home/vagrant/code type: "rsync" options: rsync__args: ["--verbose", "--archive", "--delete", "-zz"] rsync__exclude: ["node_modules"]
Nginx-Site konfigurieren
Sie sind nicht mit Nginx vertraut? Es spielt keine Rolle. sites
Mit der Funktion können Sie ganz einfach einen „Domainnamen“ einem Ordner auf Homestead zuordnen. Ein einfaches Beispiel für die Site-Konfiguration ist in der Datei Homestead.yaml
enthalten. Ebenso können Sie Ihrer Homestead-Umgebung so viele Sites hinzufügen, wie Sie benötigen. Homestead kann eine praktische Virtualisierungsumgebung für jedes Laravel-Projekt bereitstellen, das Sie entwickeln:
sites: - map: homestead.test to: /home/vagrant/code/my-project/public
Wenn Sie die sites
-Optionen nach der Konfiguration der virtuellen Homestead-Maschine ändern, müssen Sie den Befehl vagrant reload --provision
erneut ausführen Nginx-Konfiguration auf der virtuellen Maschine.
Hosts Datei
Sie müssen den auf der Nginx-Site hinzugefügten Domänennamen zu Ihrer lokalen hosts
-Datei hinzufügen. Die hosts
-Datei leitet Anfragen an Ihre Homestead-Site an Ihre virtuelle Homestead-Maschine weiter. Diese Datei befindet sich unter /etc/hosts
auf Mac und Linux und unter C:WindowsSystem32driversetchosts
unter Windows. Das Format zum Hinzufügen einer neuen Site lautet wie folgt:
192.168.10.10 homestead.test
Stellen Sie sicher, dass die Überwachungs-IP-Adresse mit der übereinstimmt, die Sie in der Datei Homestead.yaml
festgelegt haben. Sobald Sie Ihren Domainnamen zur hosts
-Datei hinzugefügt und Vagrant Box gestartet haben, können Sie über Ihren Browser auf die Website zugreifen:
http://homestead.test
Starten Sie Vagrant Box
Bearbeiten Sie es entsprechend Ihren Anforderungen Homestead.yaml
, führen Sie den Befehl vagrant up
in Ihrem Homestead-Ordner aus. Vagrant startet die virtuelle Maschine und konfiguriert automatisch Ihre freigegebenen Ordner und die Nginx-Site.
Um eine virtuelle Maschine zu löschen, führen Sie einfach den Befehl vagrant destroy --force
aus.
Pro Projekt installieren
Zusätzlich zur globalen Installation von Homestead und der gemeinsamen Nutzung derselben Homestead-Box für alle Projekte können Sie eine Homestead-Instanz pro Projekt konfigurieren. Durch das Erstellen von Vagrantfile
unter dem Projekt können andere Projektmitglieder durch einfaches Ausführen von vagrant up
über dieselbe Entwicklungsumgebung verfügen.
Um Homestead direkt im Projekt zu installieren, müssen Sie den Composer-Befehl verwenden:
composer require laravel/homestead --dev
Nach der Installation von Homestead verwenden Sie den Befehl make
, um Vagrantfile
- und Homestead.yaml
-Dateien zu generieren im Projektstammverzeichnis. Der Befehl make
konfiguriert automatisch die Anweisungen Homestead.yaml
und sites
in der Datei folders
.
Mac/Linux:
php vendor/bin/homestead make
Windows:
vendor\bin\homestead make
Führen Sie als Nächstes den Befehl vagrant up
in der Befehlszeile aus und greifen Sie dann in Ihrem Browser auf http://homestead.test
zu. Denken Sie daran, dass Sie Ihren /etc/hosts
-Eintrag oder einen anderen Domänennamen noch zur homestead.test
-Datei hinzufügen müssen, bevor Sie darauf zugreifen können.
MariaDB installieren
Wenn Sie lieber MariaDB anstelle von MySQL verwenden möchten, können Sie es im <🎜 hinzufügen > Datei Eine Option für Homestead.yaml
. Diese Option entfernt MySQL und installiert MariaDB. MariaDB ist nur ein Nebenersatz für MySQL, Sie können also weiterhin den Datenbanktreiber mariadb
in der Datenbankkonfiguration Ihrer Anwendung verwenden: mysql
box: laravel/homestead ip: "192.168.10.10"memory: 2048cpus: 4provider: virtualbox mariadb: trueMongoDB installierenWenn Sie MongoDB Community Edition installieren müssen, können Sie dies tun
Ändern Sie die Konfiguration in der Datei wie folgt: Homestead.yaml
mongodb: trueDie Standardinstallationsmethode von MongoDB setzt den Datenbankbenutzernamen auf
und das Standardkennwort auf homestead
. secret
im Homestead.yaml
hinzufügen Dateioption und geben Sie unterstützte Versionsnummern an. Es kann nur die Hauptversion enthalten oder eine bestimmte Versionsnummer (major.minor.patch) sein. Die Standardinstallation erstellt einen Cluster mit dem Namen „homestead“. Beachten Sie, dass Sie Elasticsearch niemals mehr als die Hälfte des Speichers des Betriebssystems geben sollten. Stellen Sie daher sicher, dass Ihr Homestead mindestens doppelt so viel Speicher wie Elasticsearch zuweist: elasticsearch
box: laravel/homestead ip: "192.168.10.10"memory: 4096cpus: 4provider: virtualbox elasticsearch: 6
{tip} Sie können sich die Elasticsearch-Dokumentation ansehen Erfahren Sie, wie Sie es selbst machen. Definieren Sie Ihre Konfiguration.
Neo4j installieren
Neo4j ist ein Diagrammdatenbank-Verwaltungssystem. Um Neo4j Community Edition zu installieren, müssen Sie die Homestead.yaml
-Konfigurationselemente wie folgt aktualisieren:
neo4j: true
Die Standardinstallation von Neo4j setzt den Datenbank-Benutzernamen auf homestead
und das entsprechende Passwort auf secret
. Um Neo4j anzuzeigen, können Sie http://homestead.test:7474
in Ihrem Browser aufrufen. Neo4j bietet drei externe Ports: 7687
(Bolt), 7474
(HTTP), 7473
(HTTPS) für den Zugriff vom Client.
Alias
Sie können einen Bash-Alias für die virtuelle Homestead-Maschine hinzufügen, indem Sie das aliases
bearbeiten Datei im Homestead-Verzeichnis. :
alias c='clear'alias ..='cd ..'
Aktualisiertaliases
Um sicherzustellen, dass der neue Alias auf der Maschine verfügbar ist, sollten Sie die virtuelle Homestead-Maschine mit dem Befehl vagrant reload --provision
neu starten.
Täglicher Gebrauch
Weltweit verfügbar Homestead
Manchmal möchten Sie möglicherweise den Befehl vagrant up
von einem beliebigen Pfad im Dateisystem aus ausführen, um die virtuelle Homestead-Maschine zu starten. Bash-Funktionen können in der Bash-Konfigurationsdatei ( ~/.bash_profile
) auf Mac-/Linux-Systemen hinzugefügt werden. Unter Windows können Sie „Batch“-Dateien zu PATH
hinzufügen. Mit diesen Skripten können Sie einen Vagrant-Befehl von überall auf Ihrem System ausführen und den Befehl automatisch auf den Homestead-Installationspfad verweisen:
Mac/Linux
function homestead() { ( cd ~/Homestead && vagrant $* ) }
Stellen Sie sicher, dass Sie dies tun Fügen Sie diese Funktion ein. Der ~/Homestead
-Pfad wird an den tatsächlichen Homestead-Installationspfad angepasst. Auf diese Weise können Sie Befehle wie homestead up
oder homestead ssh
überall auf Ihrem System ausführen.
Windows
Erstellen Sie an einer beliebigen Stelle im System eine Batchdatei homestead.bat
mit folgendem Inhalt:
@echo off set cwd=%cd% set homesteadVagrant=C:\Homestead cd /d %homesteadVagrant% && vagrant %* cd /d %cwd% set cwd= set homesteadVagrant=
Stellen Sie sicher, dass Sie <🎜 in die Datei einfügen script >Passen Sie den Pfad an den tatsächlichen Installationspfad von Homestead an. Fügen Sie nach dem Erstellen der Datei den Dateipfad zu C:Homestead
hinzu. Anschließend können Sie Befehle wie PATH
oder homestead up
an einer beliebigen Stelle im System ausführen. homestead ssh
im Homestead-Verzeichnis ausführen die virtuelle Maschine. vagrant ssh
Mit der Datenbank verbinden
homestead
Standardmäßig wurden MySQL- und PostgreSQL-Datenbanken in der virtuellen Maschine konfiguriert. Der Einfachheit halber konfiguriert die Datei .env
in Laravel das Framework so, dass es diese Datenbank standardmäßig verwendet.
Um vom Datenbank-Client des Hosts aus eine Verbindung zu MySQL oder PostgreSQL herzustellen, sollten Sie eine Verbindung zu 127.0.0.1
, Port 33060
(MySQL) oder 54320
(PostgreSQL) herstellen. Der Benutzername und das Passwort lauten jeweils homestead
/ secret
.
{note} Diese nicht standardmäßigen Ports können nur verwendet werden, wenn eine lokale Verbindung zur Hoemstead-Datenbank hergestellt wird. Wenn Laravel in einer virtuellen Maschine ausgeführt wird, sollten Sie weiterhin die Standardports 3306 und 5432 für Datenbankverbindungen verwenden.
Datenbanksicherung
Wenn Ihre Vagrant-Box zerstört wird, kann Homestead Ihre Datenbank automatisch sichern. Um diese Funktion nutzen zu können, müssen Sie Vagrant 2.1.0 oder höher verwenden. Wenn Sie alternativ eine ältere Version von Vagrant verwenden, müssen Sie das vagrant-triggers
-Plugin installieren. Um automatische Datenbanksicherungen zu aktivieren, fügen Sie die folgende Zeile zu Ihrer Homestead.yaml
-Datei hinzu:
backup: true
Nach der Konfiguration exportiert Homestead Ihre Datenbank nach vagrant destroy
und mysql_backup
Inhaltsverzeichnis. Wenn Sie die Installationsmethode pro Projekt verwenden, finden Sie diese Verzeichnisse in Ihrem geklonten Homestead oder in Ihrem Projektstammverzeichnis. postgres_backup
hinzu: Homestead.yaml
sites: - map: homestead.test to: /home/vagrant/code/my-project/public - map: another.test to: /home/vagrant/code/another/publicWenn Vagrant Ihre „Hosts“-Datei nicht automatisch verwalten kann, müssen Sie möglicherweise auch neue Sites zur Datei hinzufügen:
192.168.10.10 homestead.test 192.168.10.10 another.testSobald die Site hinzugefügt wurde, führen Sie den Befehl
in Ihrem Homestead-Verzeichnis aus. vagrant reload --provision
verwenden: symfony2
sites: - map: symfony2.test to: /home/vagrant/code/my-symfony-project/web type: "symfony2"Die verfügbaren Site-Typen sind:
, apache
, apigility
, expressive
(Standard). ) , laravel
, proxy
, silverstripe
, statamic
, symfony2
und symfony4
. zf
Site-Parameter
Sie können Ihrer Site über die params
-Site-Direktive zusätzliche Nginx-fastcgi_param
-Werte hinzufügen. Beispielsweise fügen wir einen BAR
-Parameter mit dem Wert Foo
hinzu:
sites: - map: homestead.test to: /home/vagrant/code/my-project/public params: - key: FOO value: BAR
Environment Variables
Sie Dies kann durch Hinzufügen des folgenden Werts zu Homestead.yaml
erfolgen Datei zum Festlegen globaler Umgebungsvariablen:
variables: - key: APP_ENV value: local - key: FOO value: bar
Stellen Sie nach dem Aktualisieren der Homestead.yaml
-Datei sicher, dass Sie den Computer neu konfigurieren, indem Sie den Befehl vagrant reload --provision
ausführen. Dadurch wird die PHP-FPM-Konfiguration für alle installierten PHP-Versionen aktualisiert und die Umgebung für den vagrant
-Benutzer aktualisiert.
Konfigurieren eines geplanten Zeitplans
Laravel bietet eine Möglichkeit, geplante Jobs zu planen, indem ein einzelner schedule:run
Artisan geplant wird Befehle werden jede Minute ausgeführt. Der Befehl schedule:run
überprüft den Zeitplan, den Sie in der Klasse AppConsoleKernel
definiert haben, um zu entscheiden, welcher Job ausgeführt werden soll.
Wenn Sie den Befehl schedule:run
für eine Homestead-Site ausführen möchten, können Sie beim Definieren der Site die Option schedule
auf true
setzen:
sites: - map: homestead.test to: /home/vagrant/code/my-project/public schedule: true
Der Cron-Job für Die Site wird im Verzeichnis /etc/cron.d
der virtuellen Maschine definiert.
Mailhog konfigurieren
Mit Mailhog können Sie ausgehende E-Mails einfach erfassen und überprüfen, ohne dass tatsächlich keine Nachrichten gesendet werden an die Empfänger. Aktualisieren Sie zunächst Ihre .env
-Datei mit den folgenden E-Mail-Einstellungen:
MAIL_DRIVER=smtp MAIL_HOST=localhost MAIL_PORT=1025 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null
Sobald Mailhog konfiguriert ist, können Sie unter http://localhost:8025
auf das Mailhog-Kontrollfeld zugreifen.
Minio konfigurieren
Minio ist ein Open-Source-Objektspeicherserver mit einer API, die mit Amazon S3 kompatibel ist. Um Minio zu installieren, aktualisieren Sie Ihre Homestead.yaml
-Datei mit den folgenden Konfigurationsoptionen:
minio: true
Standardmäßig ist Minio auf Port 9600
verfügbar. Sie können auf das Minio-Kontrollfeld zugreifen, indem Sie http://homestead:9600
aufrufen. Der Standardzugriffsschlüssel ist homestead
und der Standardschlüssel ist secretkey
. Beim Zugriff auf Minio sollten Sie immer us-east-1
verwenden.
Um Minio verwenden zu können, müssen Sie die S3-Festplattenkonfiguration in Ihrer config/filesystems.php
Konfigurationsdatei anpassen. Sie müssen die Option use_path_style_endpoint
zur Festplattenkonfiguration hinzufügen und den Schlüssel url
in endpoint
ändern:
's3' => [ 'driver' => 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), 'endpoint' => env('AWS_URL'), 'use_path_style_endpoint' => true ]
Stellen Sie abschließend sicher, dass Ihre .env
-Datei die folgende Option hat:
AWS_ACCESS_KEY_ID=homestead AWS_SECRET_ACCESS_KEY=secretkey AWS_DEFAULT_REGION=us-east-1 AWS_URL=http://homestead:9600
Um den Bucket zu konfigurieren, fügen Sie ein buckets
zur Homestead-Konfigurationsdatei hinzu Direktive:
buckets: - name: your-bucket policy: public - name: your-private-bucket policy: none
Zu den unterstützten policy
-Werten gehören: none
, download
, upload
und public
.
Ports
Standardmäßig werden die folgenden Ports an Ihre Homestead-Umgebung weitergeleitet:
- SSH: 2222 -> Weiterleiten an 22
- ngrok UI: 4040 -> Weiterleiten an 4040
- HTTP: 8000 -> 80
- HTTPS: 44300 -> Weiterleiten an 443
- MySQL: 33060 -> 3306
- PostgreSQL: 54320 -> Weiterleiten an 5432
- MongoDB: 27017 -> 27017
- Mailhog: 8025 -> Weiterleiten an 8025
- Minio: 9600 -> 9600
Zusätzliche Ports weiterleiten
Sie können zusätzliche Ports an Vagrant weiterleiten, wenn Sie möchten Boxen, auch mit Angabe ihrer Protokolle:
ports: - send: 50000 to: 5000 - send: 7777 to: 777 protocol: udp
Teilen Sie Ihre Umgebung
Manchmal möchten Sie den Inhalt Ihrer aktuellen Arbeit mit Kollegen oder Kunden teilen. Vagrant verfügt über eine integrierte Möglichkeit, dies über vagrant share
zu unterstützen. Dies funktioniert jedoch nicht, wenn die Datei Homestead.yaml
mehrere Site-Konfigurationen enthält.
Um dieses Problem zu lösen, enthält Homestead einen eigenen share
-Befehl. Stellen Sie zunächst über vagrant ssh
eine SSH-Verbindung zu Ihrem Homestead-Computer her und führen Sie share homestead.test
aus. Dadurch wird die Homestead.yaml
-Site aus Ihrem homestead.test
-Profil geteilt. Natürlich können Sie jede andere konfigurierte Site durch homestead.test
ersetzen:
share homestead.test
Nach dem Ausführen dieses Befehls wird ein Ngrok-Bildschirm mit dem Aktivitätsprotokoll und zugänglichen URLs für die freigegebene Site angezeigt. Wenn Sie eine benutzerdefinierte Region, Subdomain oder andere Ngrok-Laufzeitoptionen angeben möchten, können Sie diese zu Ihrem share
-Befehl hinzufügen:
share homestead.test -region=eu -subdomain=laravel
{note} Denken Sie daran, dass Vagrant wichtig ist, unsicher ist und exponiert die virtuelle Maschine mit dem Internet verbinden, wenn Sie den Befehl
share
ausführen.
Mehrere PHP-Versionen
Homestead 6 führt Unterstützung für mehrere PHP auf derselben virtuellen Maschinenversion ein Unterstützung. Sie können die PHP-Version angeben, die für eine bestimmte Site in Ihrer Homestead.yaml
-Datei verwendet werden soll. Die verfügbaren PHP-Versionen sind: 『7.1』, 『7.2』 und 『7.3』 (Standard):
sites: - map: homestead.test to: /home/vagrant/code/my-project/public php: "7.1"
Außerdem können Sie jede unterstützte PHP-Version über CLI verwenden:
php7.1 artisan list php7.2 artisan list php7.3 artisan list
Web Server
Homestead verwendet standardmäßig den Nginx-Webserver. Wenn jedoch apache
als Site-Typ angegeben ist, wird Apache installiert. Obwohl zwei Webserver gleichzeitig installiert sind, können sie nicht gleichzeitig ausgeführt werden. flip
Skriptbefehle können verwendet werden, um den Wechsel zwischen Webservern einfach zu handhaben. Der Befehl flip
ermittelt automatisch den laufenden Webserver und fährt ihn herunter. Dann starten Sie andere Server. Um diesen Befehl zu verwenden, stellen Sie eine SSH-Verbindung zu Ihrem Homestead-Computer her und führen Sie den Befehl im Terminal aus:
flip
Homestead enthält den Postfix-Mail-Transfer-Agent, der standardmäßig auf Port 1025
lauscht. Daher können Sie Ihre Anwendung anweisen, den localhost
Mail-Treiber am 1025
Port smtp
zu verwenden. Alle ausgehenden E-Mails werden von Postfix verarbeitet und von Mailhog erfasst. Um gesendete Nachrichten anzuzeigen, öffnen Sie http://localhost:8025
in einem Webbrowser.
-Attribut in
NetzwerkschnittstelleHomestead.yaml
networks
konfiguriert die Netzwerkschnittstelle für die Homestead-Umgebung. Sie können nach Bedarf mehrere Schnittstellen konfigurieren:
networks: - type: "private_network" ip: "192.168.10.20"
Um eine überbrückte -Schnittstelle zu aktivieren, konfigurieren Sie die bridge
-Einstellungen und ändern Sie den public_network
Netzwerktyp:
networks: - type: "public_network" ip: "192.168.10.20" bridge: "en1: Wi-Fi (AirPort)"
, um ihn zu aktivieren DHCP, entfernen Sie es einfach aus Ihrer Konfigurationip
Optionen:
networks: - type: "public_network" bridge: "en1: Wi-Fi (AirPort)"
Homestead erweitern
Sie können Homestead mit dem after.sh
-Skript im Homestead-Stammverzeichnis erweitern . In dieser Datei können Sie alle Shell-Befehle hinzufügen, die zum ordnungsgemäßen Konfigurieren und Anpassen der virtuellen Maschine erforderlich sind.
Beim Anpassen von Homestead fragt Ubuntu Sie möglicherweise, ob Sie die ursprüngliche Konfiguration des Pakets beibehalten oder mit einer neuen Konfigurationsdatei überschreiben möchten. Um dies zu vermeiden, sollten Sie bei der Installation des Pakets den folgenden Befehl verwenden, um zu vermeiden, dass zuvor von Homestead geschriebene Konfigurationen überschrieben werden:
sudo apt-get -y \ -o Dpkg::Options::="--force-confdef" \ -o Dpkg::Options::="--force-confold" \ install your-package
Updating Homestead
Sie können Homestead aktualisieren, indem Sie einige einfache Schritte befolgen. Zuerst sollten Sie die Vagrant-Box mit dem Befehl vagrant box update
aktualisieren:
vagrant box update
Als nächstes müssen Sie den Homestead-Quellcode aktualisieren. Wenn Sie das Repository geklont haben, können Sie die folgenden Befehle an dem Ort ausführen, an dem Sie das Repository ursprünglich geklont haben:
git fetchgit checkout v8.0.1
Diese Befehle rufen den neuesten Homestead-Code aus dem GitHub-Repository ab, rufen die neuesten Tags ab und überprüfen ihn dann Holen Sie sich die neueste Tag-Version. Die neueste stabile Version finden Sie auf der GitHub-Releases-Seite.
Wenn Sie Homestead über composer.json
Ihres Projekts installiert haben, sollten Sie sicherstellen, dass Ihr composer.json
"laravel/homestead": "^8"
enthält, und Ihre Abhängigkeiten aktualisieren:
composer update
Schließlich müssen Sie Ihr Projekt zerstören und neu erstellen Homestead-Box, um die neueste Vagrant-Installation zu nutzen. Um dies zu erreichen, in Ihrem Homestead Führen Sie im Verzeichnis den folgenden Befehl aus:
vagrant destroy vagrant up
Besondere Einstellungen bereitstellen
VirtualBox
natdnshostresolver
Standardmäßig Homestead Setzen Sie die natdnshostresolver
-Konfiguration auf on
. Dadurch kann Homestead die DNS-Einstellungen Ihres Host-Betriebssystems verwenden. Wenn Sie dieses Verhalten nicht außer Kraft setzen möchten, fügen Sie die folgende Zeile zu Ihrer Homestead.yaml
-Datei hinzu:
provider: virtualbox natdnshostresolver: off
Symbolische Links unter Windows
Wenn symbolische Links auf Ihrem Windows-Computer nicht ordnungsgemäß funktionieren, müssen Sie möglicherweise den folgenden Block zur Vagrantfile
-Datei hinzufügen:
config.vm.provider "virtualbox" do |v| v.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/v-root", "1"] end