参考サイト
1.VirtualBox のインストール
公式サイトからダウンロードして、インストール。
インストールしたら、仮想マシンの置き場所をGUIから変更する。(環境設定>一般)
2.Vagrant のインストール
公式サイトからダウンロードして、インストール。
環境変数「VAGRANT_HOME」にvagrant box の置き場所を指定する。
vi ~/.bash_profile ---- export VAGRANT_HOME=/(boxを置きたいディレクトリ)/.vagrant.d # 追記 ---- source .bash_profile echo $VAGRANT_HOME /(boxを置きたいディレクトリ)/.vagrant.d # 変わっているのを確認
3.Homestead の vagrant box をダウンロード
$ vagrant box add laravel/homestead ==> box: Loading metadata for box 'laravel/homestead' box: URL: https://vagrantcloud.com/laravel/homestead This box can work with multiple providers! The providers that it can work with are listed below. Please review the list and choose the provider you will be working with. 1) hyperv 2) parallels 3) virtualbox 4) vmware_desktop Enter your choice: 3 # VirtualBox を使うので、3を入力。
4.Homestead のダウンロード
これは、Homesteadのファイル一式(設定ファイルやら何やら)なので、それらファイルを置きたいディレクトリに移動しておく。
$ git clone https://github.com/laravel/homestead.git Homestead $ cd Homestead $ bash init.sh # Homestead を初期化。Homestead.yaml が作成される。
5.SSH鍵ファイルの作成
$ cd ~ $ ssh-keygen -t rsa $ ls -la .ssh ---- -rw------- 1 foo bar 1831 3 31 20:13 id_rsa -rw-r--r-- 1 foo bar 405 3 31 20:13 id_rsa.pub ---- *ファイルが出来ていることを確認 $ cp .ssh/id_rsa* /Volumes/forDocker/Homestead # 気分的にホームディレクトリ内そのままで使いたくなかったのでコピー
6.設定ファイルの編集と仮想マシン起動
$ vi Homestead.yaml # 鍵ファイルの場所変えたので、設定ファイルを編集 ---- ip: "192.168.10.10" memory: 2048 cpus: 1 provider: virtualbox authorize: /Volumes/forDocker/Homestead/id_rsa.pub # 変更 keys: - /Volumes/forDocker/Homestead/id_rsa # 変更 folders: - map: /Volumes/forDocker/laravel_test # 変更 to: /home/vagrant/code sites: - map: homestead.test to: /home/vagrant/code/public databases: - homestead ---- $ vagrant up
7.仮想マシンにSSHでログインし、 Laravel をインストール
$ vagrant ssh #### vagrant@homestead $ mkdir code vagrant@homestead $ cd code vagrant@homestead $ laravel new vagrant@homestead $ php artisan migrate
これで、ブラウザから「192.168.10.10」にアクセスすると、Laravel の画面が表示される。
さて、Homestead でLaravel 環境作ったわけだが、ここまでの手順で、ホスト側に composer 使ってライブラリをインストールするという手順は発生していない。
これで、先日の流れた案件で、「 Homestead 使ってるから、ホスト側に PHP + composer のインストールが必要」って説明が、ますます訳分からないことに。
(追記)
「Homestead 使ってるから、composer が必要」ってのは、下記の説明を元にしてると思われる。
https://readouble.com/laravel/5.4/ja/homestead.html
確かに、このサイトにはプロジェクト単位でインストールするには composer 使え、って書いてあるが。
これって、git clone するディレクトリ自体を別のものにすれば、わざわざ composer 入れなくても良いんじゃないか?
タグ:
#Laravel #PHP #Vagrant #VirtualBox