ココミテ

気になったことや調べたこと書きたいことををジャンル問わず。

【Laravel5.5】Homesteadを使って簡単に開発環境を構築する方法を教える(Mac編)

今回はLaravel Homesteadを使った開発環境の構築方法Mac編を紹介します。

Laravelの開発環境を整えることはかなり面倒で大変なことですので、前に一度やって挫折したという方もいるかと思います。

ここでは開発初心者の方でも分かりやすく、無駄を省いた説明で書いてあります。

Homesteadは仮想マシンを使った開発環境を整えることができるので、レンタルサーバー無しに開発を進められます。

順番通りにやれば必ずできるので頑張ってください。

ちなみに今回は長期間サポートのLaravel5.5をインストールします。

今回使ったMac

MacBook Air (11-inch, Mid 2011) もう古いですねw
macOS High Sierra 10.13.4

1.事前準備

XCodeのインストール

すでに最新のGitが入っている場合は飛ばしてください。

最新のGitを使うためにApp StoreでXCodeを検索してインストール。

インストール後、一旦XCode起動。表示された内容に対してAgreeを選択してください。
あとはXcodeを閉じても大丈夫です。

Vagrantのインストール

Downloads | Vagrant by HashiCorp
上のリンクからmacOS「64-bit」をダウンロードします。
ダウンロードしたファイルを開き、vagrant.pkgをダブルクリックしてインスロールしてください。

VirtualBoxのインストール

Downloads – Oracle VM VirtualBox
上のリンクから「OS X hosts」をダウンロードします。
ダウンロードしたファイルを開き、VirtualBox.pkgをダブルクリックしてインストールしてください。

機能拡張がブロックされましたと表示された場合は[”セキュリティ"環境設定を開く]を押してください。

右下の[許可]を押してください。

2.Homestead Vagrant Boxのインストール

ターミナルを起動して下のコマンドをコピペしてEnterを押してください。

すると次のような表示がされるので「virtualbox」に対応する数字を入力してEnterを押してください。 私の環境では「2」でした。ダウンロードは環境により10〜30分程度かかります。

※ちなみにターミナルはLaunchPadを開き一番上に表示される検索窓に「ターミナル」と入力すると簡単に開けます。
←LaunchPad

【補足】ターミナルの使い方について

ターミナルはマウス操作ではなくコマンド(キーボード)で操作します。
ここでは以下の操作を覚えてください。

カーソルの移動:矢印
現在の対象フォルダの中にあるファイルやフォルダを調べる:ls
対象フォルダの移動:cd [フォルダ名](cdとフォルダ名の間は半角スペース)
対象フォルダを上の階層へ移動:cd ../
対象フォルダを一番上の階層を移動:cd ~/
コピーした内容のペースト:[command]+[V]
それぞれ入力した後にenterを押してください。

3.Homesteadのインストール

3-1.指定フォルダへダウンロード

ホームディレクトリ直下の新規作成するフォルダにHomesteadをダウンロードします。
[Finder]を開き、上のメニューバーから[移動]→[ホーム]を選択してホームディレクトリに移動します。
この場所に「src」フォルダを作成します。

次の4つのコマンドをそれぞれターミナルに入力し実行してください。
1行目でターミナルの対象フォルダをsrcフォルダに移動し、3行目でHomesteadをダウンロードします。
5行目でHomesteadフォルダに移動し、7行目でHomesteadの最新の安定バージョンに設定します。
最新の安定バージョンはReleases · laravel/homestead · GitHubで確認してください。 執筆時点ではv7.7.0が最新バージョンでした。

3-2.設定ファイル(Homestead.yaml)を生成

次のコマンドを入力すると、Homestead initialized!と表示され設定ファイルが作成されます。

4.SSH接続の準備

仮想マシンに安全に接続するための準備をします。
次のコマンドを実行してSSH鍵を作成します。

「Enter file in which to save the key (/Users/koyasousei/.ssh/id_rsa):」と表示されますが、何も入力せず[Enter]を押してください。

「Enter passphrase (empty for no passphrase):」と表示されるので任意のパスワードを入力してください。
※入力をしても変化が無いように見えますがちゃんと入力できていますので安心してください。

「Enter same passphrase again:」と表示されるので、再度同じパスワードを入力してください。

5.Homestead設定

vimというエディタで設定ファイルを編集します。


【vimの操作】
「i」で編集モード(insert)になり編集することができます。
[esc]を押すと編集モードを終了します。
「:wq」上書き保存してvimを終了します。
「:q」保存せずにvimを終了します。


次のコマンドを入力してください。

すると下のような内容が表示されます。

最初に、「ip:」の値「sites:」の下の「map:」の値をメモしておきましょう。

「i」を押して編集モードにし、folders:とsites:を以下のように変更します。

[esc]を押し、編集モードを解除してから「:wq」と入力して上書き保存します。

※map:Mac上のフォルダを指しています。
※to:仮想マシン上のフォルダを指しています。
※mapとtoで指定したフォルダはMacと仮想マシンで共有されます。つまりMacのsrcフォルダにファイルを入れると、仮想マシンのcodeフォルダにも同じファイルが入ります。

6.Vagrant Boxの実行

ターミナルがHomesteadフォルダにいることを確認して次のコマンドを入力してください。

上のコマンドで仮想マシンが起動します。LaunchPadからVirtualBoxを開いてみると、起動したことを確認できます。

7.Laravelのファイル群をダウンロード

起動した仮想マシンにログイン

次のコマンドでログインできます。

仮想マシンのcodeフォルダに移動した後、3行目のコマンドでLaravelファイル群をダウンロードします。
※最後の「"5.5.*"」はダウンロードするバージョンを指定していて、その前の「laravel」はフォルダ名です。

すると仮想マシンの「code」フォルダの下に「laravel」フォルダが作られ、ファイル群がダウンロードされます。 「code」フォルダにダウンロードされているため、フォルダを共有しているMacのsrcフォルダにもlaravelファイル群がダウンロードされています。

8.Laravelのページを表示する

8-1.準備(ホスト名とIPアドレスの関連付け)

ターミナルのメニューバーから[シェル]→[新規ウィンドウ]→[新規ウィンドウ]を選択してください。 新しく表示されたターミナルに次のコマンドを入力してください。

「Password:」と表示されるので、Macのパスワードを入力すると以下のようなHostsファイルが表示されます。

「i」を押して編集モードにします。
上のように最後の行にHomestead.yamlに記載されていた「ip:」の値と「sites:」の下の「map:」の値を入力してください。
[esc]を押し、編集モードを解除してから「:wq」と入力して上書き保存します。
新しく表示されたターミナルを閉じてしまってもOKです。

8-2.ページを表示する。

ブラウザに「homestead.test」と入力するとLaravelのページが表示されます。
またIPアドレス「192.168.10.10」でも表示することができます。

ページが表示されない場合

no input file specifiedと表示される場合

1.Homestead.yamlの設定が正しくない可能性
site:下のto:の値が、仮想マシン上のLaravelファイル群のpublicフォルダに正しく設定されているかを確認してください。

2.Laravelファイル群をダウンロードしていない可能性 SSH接続している状態で、次のコマンドを入力してLaravelファイル群が存在するか確認してください。

無ければLaravelのファイル群をダウンロードをしてください。

最後に

以上で、Laravel Homesteadの開発環境の構築が完了です。 うまくできましたでしょうか? Laravelの公式サイトにもドキュメントがありますので、そちらも読んでおくといいですよ。

Laravel Homestead 5.5 Laravel