MacにVagrant・VirtulBoxでLaravel環境を構築する方法

ネットワークバックエンド

Written by:

Macであれば直接ダウンロードした方が早いのですが、Macのアップデートなどで使えるコマンドにロックがかかったりしてコンポーサーのアップデートが面倒だったため潔く仮想環境を作ることにしました

仮想環境をダウンロード

仮想環境本体となるVirtulBoxをダウンロードします

https://www.virtualbox.org/wiki/Downloads

 

次にVBoxを動かすためのツールであるVagrantをインストールします

https://www.vagrantup.com/

 

HomesteadのBoxを入れる

VirtulBoxをダウンロードしただけでは、まだ仮想環境はできていません

どんな仮想環境にするか決めなければなりません。ですがネットにはすでに必要なものをひとまとめにして、すぐに仮想環境として使えるパッケージが公開されている場合があります

Laravelの場合はHomestead vagrant boxというものが使えます

これはターミナルにコマンドを打ってインストールします

vagrant box add laravel/homestead

すると、Enter your choiceと、どの種類の仮想環境を作るか聞かれます

3) virtualboxを選択します

 

Homsteadをダウンロード

HomsteadはLaravelを扱う環境を簡単に作るためのツールです

このようなディレクトリを作り

/Users/ユーザー名/app/

appディレクトリに移動します

git clone https://github.com/laravel/homestead.git Homestead

実際にダウンロードします

appディレクトリの中にHomesteadフォルダーができたかと思います

 

Laravel Homesteadの設定

設定ファイルを作ります。Homesteadフォルダの中に移動して

Users\ユーザー名\app\Homestead

bash init.sh

というコマンドをうちHomestead.yamlファイルを作ります

コメントアウトされていないデフォルトの設定は以下のようになっているはずです


ip: “192.168.10.10”
memory: 2048
cpus: 1
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub

keys:
– ~/.ssh/id_rsa

folders:
– map: ~/code
to: /home/vagrant/code

sites:
– map: homestead.test
to: /home/vagrant/code/public

databases:
– homestead

folders:とはMac側の設定のことで「- map: ~/code」ユーザー直下のディレクトリと仮想環境のディレクトリを共有しているという意味です

そのためユーザー直下のディレクトリに新しくcodeディレクトリを作りましょう。そうすることで仮想環境で作ったアプリをMacのローカル環境でも確認する事ができます。

 

鍵の登録

仮想環境とデータが共有される共有フォルダーの指定はできましたが、自分のMacから仮想環境にアクセスするためには鍵が必要になります

まずホームディレクトリに移動して

cd ~/

鍵ファイルの有無を確認します

ls -la I grep .ssh

id_rsa と id_rsa.pub があれば鍵が存在していることになります。なければ下記の手順で新しく作成します

ssh-keygen -t rsa

Enter file in which to save the keyと、鍵ファイルを保存するディレクトリを聞かれるので特に何もせずEnter

Enter passphraseと、パスフレーズを聞かれるので自分が覚えられるパスワードを入力。サイド確認で聞かれるのでもう一度先ほどのパスワードをうち完了

 

仮想マシーンを起動

ディレクトリを移動します

cd ~/app/Homestead

vagrantを立ち上げます

vagrant up

立ち上がったらログインします

vagrant ssh

ログインができたら共有フォルダーに移動します

cd Code/

実際にLaravelのアプリケーションを作成してみます

composer create-project laravel/laravel –prefer-dist ディレクトリ名

先ほどのHomestead.yamlファイルにあったIPアドレスにブラウザからアクセスして、Laravelのホーム画面が出れば構築成功です

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です