Laravel Homestead:便利なローカル開発環境
すぐにホームステッドを始めたいですか?簡単なヒントを確認してください。詳細については、読み続けてください。
単純に言えば、Laravel HomeSteadはです
公式の事前にパッケージ化されたVagrantの「ボックス」は、ローカルマシンにPHP、Webサーバー、その他のサーバーソフトウェアをインストールせずに優れた開発環境を提供します。
言い換えれば、以前の記事(これらの記事など)でVagrantとPuphpetを使用して手動で行ったことを自動的に完了します。
では、通常のVaprobash/Vagrant/puphpetの設定とどう違うのでしょうか?見てみましょう。
キーポイント
Laravel Homesteadは、PHP、Webサーバー、その他のサーバーソフトウェアを手動でインストールせずに強力な開発環境を提供する事前にパッケージ化されたVagrantボックスです。 -
Homesteadは、Laravelの作成者Taylor Otwellによって公式に開発され、高品質、信頼性、シンプルさで知られており、PHP開発者にとって最初の選択肢です。 -
Homesteadはセットアップが簡単で、開発者はプロジェクトを非常に迅速に開始できます。また、デフォルトで重要なポートを開き、ホストの仮想マシンにデータベースやその他のインストールされたソフトウェアの管理と維持プロセスを簡素化します。 -
Homesteadの公式地位は、膨大な支援とトラブルシューティングのコミュニティを保証します。また、新しいサイトまたは仮想ホストを簡単に追加して、複数のプロジェクトが1つのボックスで実行できるようにします。ただし、Global Composerのインストール、デフォルトの仮想ホストのデフォルトLaravel、HHVMサポートなど、いくつかの機能がありません。 -
1は機能します
vagrantFileの設定を簡素化する他の人気のあるソリューションとは異なり、HomeSteadはめったに開始できず、失敗した場合は数分で修正できます。 GUI Vagrant Solutionsを扱っていた場合、最初のVagrantの後にすべてを実行することがどれほど珍しいかに気付くでしょう。時代遅れまたは過度に更新された人形、時代遅れのUbuntuリポジトリ、または解決するために多くの「フォーラム検索」を必要とする他の神秘的なバグなどの問題が常にあります。ホームステッドは単に...機能します。
HomesteadはUbuntu 14.04にPHP 5.5で設置されているため、可能な限り新しいものであり、ベータ/RCの領域には入りません(Nginx(私たちはすべてApacheをあきらめているからですよね?)、MySQL、Postgres、したがって、Heroku(デフォルトはHeroku Postgres)、ノード(すべての静的リソースの編集要件、バックグラウンドタスク、およびその他の重要性の低いビジネス)、Redis、Memcached、およびBeanStalkd(すべてのキャッシュおよびキューイング要件)、Laravel Envoy(すべてのリモートサーバータスク要件)およびファブリックヒップチャット拡張機能を使用して、HipChat(Chatopsとも呼ばれる)を介してアプリケーションを展開できるようにします。
2
Homesteadは公式であり、Laravelの父であるTaylor Otwellによって作られています。つまり、特定の基準を満たすと自動的に考慮されています。 Laravelコミュニティには論争がないわけではありませんが(クラスと呼ばれるものを気にします。革新的な新しいフレームワークがモデルポテト、ルック、またはロケットを呼ぶ場合、ジャガイモ/見た目/ロケットが機能する限り、それは完全に大丈夫です)、テイラーは関与すると、これの独自性は、今日のPHPの世界で非常に必要なシンプルさと品質を与えます。チームエゴ、熱心な貢献者、または無能なオールラウンドによって台無しになったオープンソースプロジェクトが多すぎるのを見てきました。私は、テイラーのララヴェルの改善へのほぼ排他的な関与は、他のプロジェクトから際立っていることであり、実際に競争の質を高めることであると個人的に考えています。ファルコンと。
ホームステッドは、「公式のローカル開発環境」として知られる彼自身のプロジェクトであり、彼はその高品質を維持し、常に効果的であることを保証するためにできる限りのことをします。欠点は彼の評判に影響します。今日のPHPでは、プロジェクトの長期的な信頼性の最良の保証は、それが(主に)品質について多くのことを気にする人が所有していることです。
3
ホームステッドのセットアップは簡単です。ドキュメントページの手順に従ってください。VagrantにHomesteadボックスを追加し(まだ持っていない場合は)、リポジトリをクローンするだけです。
慣れていない別の余分なステップがあります - SSHのセットアップ。これも非常にシンプルです。ホームステッドを編集する必要があります。関連する行をSSHキーに向けるだけで問題ありません。私の場合、私は次のものを変更する必要がありました:
〜
<code>---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: /Users/me/.ssh/id_rsa.pub
keys:
- /Users/me/.ssh/id_rsa
folders:
- map: /Users/me/Code
to: /home/vagrant/Code
sites:
- map: homestead.app
to: /home/vagrant/Code/Laravel/public
variables:
- key: APP_ENV
value: local</code>
ログイン後にコピー
ログイン後にコピー
vagrantを実行した後、すべての準備が整うはずです:
<code>---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: C:\Users\Bruno\.ssh\id_rsa.pub
keys:
- C:\Users\Bruno\.ssh\id_rsa
folders:
- map: D:\VM\vagrant_boxes\homestead\Homestead
to: /home/vagrant/Code
sites:
- map: homestead.app
to: /home/vagrant/Code/Laravel/public
variables:
- key: APP_ENV
value: local</code>
ログイン後にコピー
ご覧のとおり、私のプロセスはいくつかのエラーを生み出しましたが、それでもうまく実行されました:
4ポート
Homesteadはデフォルトで特定の重要なポートを開き、ホストから仮想マシンにデータベースやその他のインストールされたソフトウェアを管理および保守するための簡単になります。たとえば、ホスト(私の場合はWindows)にインストールされているMySQLワークベンチを使用してインストールされているMySQLデータベースに接続するには、必要な資格情報を接続ウィンドウに入力するだけです。
デフォルトのmysqlとpostgresポートは、単にゼロ(たとえば、mysqlは3306ではなく33060)で接続されているため、ローカルホスト(127.0.0.1:33060)に接続し、仮想のデータベースへのアクセスを付与できます。機械。 
これの潜在的な欠点は、競合のためにポートを変更せずに複数のボックスを同時に実行できないことです。データベース接続が開いていて、通常どおりVMのIPに接続できる場合はさらに優れていますが、これは簡単に修正できます。以前のVagrantFilesの一部を見て、それがどのように見えるかを確認してください。
5
Homesteadは公式なので、問題が発生した場合、いつでも支援する大きなコミュニティがあると安心できます。ホームステッドを使用しているすべての人と同じ出発点があり、問題は自動的に診断が容易になります。
6
新しいサイト(仮想ホスト)の追加は、ホームステッドを微調整するときに構成ファイルの調整が容易であるため、簡単です。NGINXファイルの1つの仮想ホスト構成を処理する必要さえありません。
デフォルトでは、homestead.yamlファイルは、仮想マシンサーバー構成のデフォルトサイトとして機能する「homestead.app」という名前の単一の仮想ホストを登録します。ブラウザ内の仮想マシンのIPアドレスにアクセスできます(通常のポート80:
https://www.php.cn/link/173e2619a507a324eb10f969df13a372
:
新しい仮想ホストを登録しました。次に、その新しいサイトの名前をホストファイル(任意のプラットフォーム上)に追加する場合、ブラウザを介して名前ごとに新しいサイトにアクセスできます。ポート8000を介してアクセスする必要があります。 www.php.cn/link/e1490523b8cd2c130b29656613850cf8
<code>---
ip: "192.168.10.10"
memory: 2048
cpus: 1
authorize: /Users/me/.ssh/id_rsa.pub
keys:
- /Users/me/.ssh/id_rsa
folders:
- map: /Users/me/Code
to: /home/vagrant/Code
sites:
- map: homestead.app
to: /home/vagrant/Code/Laravel/public
variables:
- key: APP_ENV
value: local</code>
ログイン後にコピー
ログイン後にコピー
。
このプロセスを使用すると、必要な限り多くの仮想ホストを仮想マシンに追加することができ、1つのボックスから複数のプロジェクトにサービスを提供できます。
機能がありません
いくつかの不足している機能では、以下をリストします。
Homesteadにはグローバルな作曲家のインストールがありません。つまり、プロジェクトごとに手動で取得する必要があります。
上記のポートの問題 - ポートが開いている場合は、特定のポートを介してローカルホストIPに接続する代わりに、仮想マシンのIPに接続する方が良いでしょう。これにより、ポートの競合が回避され、複数のホームステッド仮想マシンが同時に実行されるようになります。
- laravelはありません。 Homesteadは、デフォルトの仮想ホストにデフォルトで基本的なLaravelプロジェクトを含めるのが最適です。そうすれば、新しいプロジェクトをゼロから作成せずに開発をすぐに開始できます。
- HHVMサポートは非常に優れており、Vaprobashの精神に適合します。
-
結論-
Laravel Homesteadは、最高で最も安定したPHP Vagrant環境の1つです。それは非常に高速で開始され、実行時に壊れて、ハッキングをすぐに開始するための最新の最新のPHP環境を構成できる依存関係がほとんど含まれていません。
使用していますか?お知らせください。
Laravel Homestead FAQ(FAQ)
Laravel Homesteadとは何ですか?なぜそれを使用する必要があるのですか?
Laravel Homesteadは、PHP、Webサーバー、およびローカルマシンにその他のサーバーソフトウェアをインストールせずに優れた開発環境を提供する事前にパッケージ化されたVagrantボックスです。複数のオペレーティングシステムで一貫した開発環境を提供するため、非常に有益です。これは、すべてのチームメンバーがMac、Windows、またはLinuxを使用しているかどうかにかかわらず、同じ環境を使用できることを意味します。
Laravel Homesteadをインストールする方法は?
Laravel Homesteadをインストールするには、最初にVirtualBox 6.x、VMware、Parallels、またはHyper-Vをプロバイダーとしてインストールする必要があります。次に、Vagrantをインストールします。インストールが完了したら、コマンド「Vagrant Box add laravel/homestead」を使用して、VagrantのインストールにLaravel Homesteadボックスを追加できます。最後に、ホストにリポジトリをクローニングしてHomesteadをインストールできます。
Laravel Homesteadのシステム要件は何ですか?
Laravel Homesteadには、VagrantとVirtualBox、VMware、Parallelsなどのハイパーバイザーが必要です。また、少なくとも1GBのRAMが必要ですが、可能であれば2GB以上を割り当てることをお勧めします。ホストには、プロジェクトファイルとデータベースを保存するのに64ビットプロセッサと十分なディスクスペースが必要です。
Laravel Homesteadを構成する方法は?
Laravel Homesteadは、homestead.yamlファイルを介して構成されています。このファイルを使用すると、プロジェクトディレクトリをホームステッド環境にマッピングし、共有フォルダーを構成し、nginxサイトをセットアップできます。このファイルでPHPバージョン、データベースタイプ、その他の設定を指定することもできます。
Laravel Homesteadを更新するにはどうすればよいですか?
Laravel Homesteadを更新するには、「Vagrant Box Update」コマンドを使用できます。これにより、Vagrantボックスが最新バージョンに更新されます。ただし、更新プロセスがこれらのファイルを上書きする可能性があるため、更新する前にhomestead.yamlファイルやその他の重要なデータをバックアップすることを忘れないでください。
他のPHPフレームワークでLaravel Homesteadを使用できますか?
はい、Laravel HomesteadはLaravelプロジェクトに限定されません。 PHP 7.4またはPHP 8.0サーバーで実行できるPHPプロジェクトで使用できます。これには、Symfony、CakePhp、Yiiなどのフレームワークが含まれます。
Laravel Homesteadの問題をトラブルシューティングする方法は?
Laravel Homesteadは、さまざまなトラブルシューティングツールを提供しています。 「-debug」フラグを使用して「Vagrant up」コマンドを使用して、詳細なログを取得できます。また、HomesteadボックスにSSHを使用して、NGINX、PHP、MySQLログのエラーを確認することもできます。
Laravel Homesteadのデータベースに接続する方法は?
Laravel Homesteadは、MySQL、Postgres、SQLite、Memcachedで事前にインストールされています。 Homesteadドキュメントで提供されているデフォルトの資格情報を使用して、これらのデータベースに接続できます。また、Sequel ProやMySQL Workbenchなどのツールを使用してこれらのデータベースに接続することもできます。
Laravel Homesteadで複数のプロジェクトを実行できますか?
はい、Laravel Homesteadは複数のプロジェクトの実行をサポートしています。 Homestead.yamlファイルに複数のプロジェクトディレクトリをマップし、各プロジェクトに個別のnginxサイトを構成できます。各プロジェクトには独自のURLがあり、独立してアクセスできます。
Laravel Homesteadをアンインストールする方法は?
Laravel Homesteadをアンインストールするには、「Vagrant Destroy」コマンドを使用できます。これにより、ホームステッドボックスとそのすべてのデータがマシンから削除されます。ただし、すべてのプロジェクトファイルとデータベースを削除するため、このコマンドを実行する前に重要なデータをバックアップすることを忘れないでください。
以上がLaravel Homesteadに移動する6つの理由の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。