Laravel入門 - Macに環境構築 -
MacにHomesteadを使用して仮想マシン上にLaravel環境する手順。
主要登場人物
VirtualBox
仮想マシン環境を提供してくれる。
例えばMac上に仮想マシンを起動して、その中ではWindowsを起動して使用する等。
今回はLaravelが走る仮想Ubuntuマシンを走らせてもらう。
Vagrant
VirtualBox、VMWARE、AWS等の仮想環境の構築等をコマンドベースで実行できるようにするツール。
今回は仮想Ubuntuマシンを構築・制御するのに使用する。
VirtualBoxをラップしてくれるイメージ。
Homestead
パッケージングを事前に済ませたLaravel公式のBox。(公式抜粋)
BoxとはVagrantのBoxのことであり、Laravelの開発に必要なOSやPHP、Nginxが入った状態で配布されている。
HomesteadがさらにVagrantをラップしているようなコンセプトになっている。
とはいえ、VagrantのBoxはVagrantコマンドでDLするし、Vagrantの設定ファイルであるVagrantfileをHomesteadで設定するような操作になっていて最初ちょっと立ち位置がわかりにくい…。
Composer
依存管理ツール。
ライブラリAをインストールする際に、Aが必要としているB、さらにはBが必要としているC,D…を自動的にインストールしてくれる。
今回は仮想Ubuntu上にLaravelフレームワークをインストールするのに使用する。
環境構築
Vagrantのインストール
公式サイトからDLしてインストールする
VirtualBox のインストール
公式サイトからDLしてインストールする
laravel/homestead boxをVagrantへ追加する
$ vagrant box add laravel/homestead
UbuntuOSにPHPやらNginx等Laravelをすぐに試せるVagrantBoxがDLされる。
HomesteadのDL
$ git clone https://github.com/laravel/homestead.git ~/Homestead
$ cd ~/Homestead
$ git checkout release
$ bash init.sh
この中にVagrantが使用するVagrantfileが含まれている。
そして、Vagrantfileは以降設定するHomestead.yamlの中を参照するように出来ている。
Homesteadの設定
Homestead.yamlを必要に応じて設定する。
今回はfoldersのmapとtoとsitesのmapとtoを編集。
foldersの方は仮想マシンとホストマシンとの間で共有されるフォルダのパスを設定する。
Homesteadで複数のプロジェクトを管理する場合はこの設定が増えていくイメージ。
sitesの方はドメインの設定。
mapにアクセスするとNginxはtoのディレクトリをルートディレクトリとする。
ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
# mapがホストマシン、toが仮想マシンのパス
# ホストマシンに指定したディレクトリが存在していること
folders:
- map: ~/vagrantcode/Laravel/hello
to: /home/vagrant/hello
sites:
- map: homestead.hello
to: /home/vagrant/hello/public
databases:
- homestead
features:
- mariadb: false
- ohmyzsh: false
- webdriver: false
SSH鍵ファイルの作成(未作成の人は
$ cd ~/
$ ssh-keygen -t rsa
Vagrant2.2.6でVirtualbox6.1を認識させる
私が環境を構築した時点でのVagrant、VirtualBoxそれぞれのVersionが2.2.6と6.1だったのだが、Vagrantが上手にVirtualBox6.1を認識できなかった。
こちらを参考に認識させることが可能だった。
Vagrant Boxの実行
$ vagrant up
VirtualBoxを立ち上げて確認するとHomesteadのマシンが実行状態になっているのが確認できるはず。
ComposerによるLaravelプロジェクトの構築
仮想マシン上にはLaravelプロジェクト自体は構築されていないので、好きなプロジェクトを構築する。
sshで仮想マシンに接続後Homestead.yamlで設定したfoldersのパスと対応する場所にプロジェクトを構築する。
※↓の場合はhelloプロジェクト
$ vagrant ssh
$ cd /home/vagrant
$ composer create-project laravel/laravel --prefer-dist hello
動作確認
ここまで実行すれば、ホスト環境からブラウザでHomestead.yamlに設定したIPにアクセスすればLaravelの画面が見えるはず。
参考サイト
https://readouble.com/laravel/6.x/ja/homestead.html
https://qiita.com/7968/items/97dd634608f37892b18a
https://qiita.com/daichi87gi/items/d5da33c76295ee32a735
https://qiita.com/hkiri/items/7060a9caff306c973679
https://qiita.com/pugiemonn/items/bcd95a35c3ec7624cd61
https://qiita.com/you-me/items/b886dd0fc8e5047c4bc6
https://weblabo.oscasierra.net/vagrant/
https://blog.office-iwakiri.com/archives/mac-652
https://it.becrazy.jp/article/laravel-homestead-setting
https://qiita.com/oreo3@github/items/4054a4120ccc249676d9
Author And Source
この問題について(Laravel入門 - Macに環境構築 -), 我々は、より多くの情報をここで見つけました https://qiita.com/tanaka512/items/289cbc62d4f9a07dba9e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .