LaravelをMacで環境構築するならHerdがおすすめ

MacでLaravelの環境構築をするなら Laravel Herd は一度は試してみて欲しいです。

公式のURLはこちら

https://herd.laravel.com

Laravelのサブドメインとして公開されているので、Laravel公式のプロジェクトです。

発端としては以下のLaravelエコシステムをまとめていた時に興味を持ったのが最初です。

開発向けの環境構築をするためのエコシステムは多く存在しており、dockerで開発環境が構築できる Laravel Sail を使った事がある人も多くいると思います。私もその一人です。

dockerは広く普及していますし、使える人も多い反面、独自の構築方法を採用したりして初回のビルドがとても長かったり、古い設定ファイルだとそもそも起動すらしないようになっていることが発生してしまいます。

あとはMacのデスクトップクライアントが重すぎて使いづらいという点もあります。(なので私はVM上に立てたLinuxに入れたdockerで動かしたりしていました)

今回はそんなdockerを使わない方法が無いのかを知りたい人に向けた、LaravelをMacで環境構築するための Herdを使いこなす方法を紹介したいと思います。

Herdとは

Herd は、macOS 用の非常に高速なネイティブ Laravel および PHP 開発環境です。 これには、PHP や nginx など、Laravel 開発を開始するために必要なすべてが含まれています。 Herd をインストールしたら、Laravel を使用して開発を開始する準備が整います。

https://herd.laravel.com の内容を翻訳

Herdで提供されることはWebアクセスするためのLaravel環境を提供してくれます

  • PHPのバージョン切り替え
  • nginx
  • php-fpm
  • httpsでアクセスするための証明書の管理

などが対象です。Swift製の常駐アプリケーションとして提供されており、非常に高速にブラウザアクセスが可能です。

Herdで出来ない事

Herdはブラウザアクセスの機能を提供することに長けているため

  • MySQLなどのデータベース
  • メール送受信の擬似環境

などは提供していません。

ですが、Herdと連携することが可能な以下のアプリケーションが別途提供されているので、組み合わせて使用する事ができます。

  • HELO
    • メール送受信の擬似環境
  • DBngin
    • MySQLなどのデータベース

Herdの使い方

Herdはドキュメントが充実しているので確認しておく事をお勧めします

https://herd.laravel.com/docs/1/getting-started/about-herd

インストールが終わったら基本的には以下のコマンドでブラウザアクセスできるようになっています。

$ cd /path/to/laravel-project
$ herd link
$ herd secure

herd link

のURLで自分のMacからのみアクセス出来るようになります。

herd secure

とhttpsでのアクセスが出来るようになります。

このURLでアクセス出来るメリットとしては

  • パスワードマネージャーが使える
  • 課金処理などSSL環境が必要な処理に工夫しなくて済む

があります。

Laravelであれば

php artisan serve

でサーバーが起動するのでブラウザアクセスが簡単に出来るようになるのですが、複数プロジェクトを管理しているとログイン処理でどのユーザーを使ったかわからなくなるので、ブラウザのパスワードマネージャー機能でURL毎にパスワードを記録してしまえばスムーズにログイン処理を実行する事ができるので、開発も捗ります。

あとは課金処理などセキュリティが堅牢なシステムを組み込む際にはSSL環境でないと機能しない物などがあります。回避方法も準備されているものもありますが、SSL環境で開発していれば労せず実装できます。

Herdを使ってみて

とてつもなく便利です。

軽量なアプリケーションなので常駐させていても何の問題もなく、気が向いた瞬間にブラウザにアドレスを2文字打ち込めばアドレス保管されてエンターで表示されるのは楽です。

今まではdockerの起動やプロセス起動するためにディレクトリに移動するまでが必要だったのですが、常にアクセス可能な状態というのはこんなにも開発しやすい状況になるのかと。とても助かっています。

あとはChrome等のパスワードマネージャーに開発用のID/パスワードを混ざらずに登録する事ができるので管理もしやすくなりました。SSL環境もいわずもがな、必要な証明書の用意なども毎回調べていた処理も不要になりました。

MacでLaravelを開発する際にはまず最初にHerdをインストールする事をオススメします。