Homestead Vagrant box のダウンロードと設定方法
それでは、実際に設定していきます。
ダウンロード
Vagrant経由でHomesteadのダウンロードを行います。
操作はコンソール上で行いますのでShellやコマンドプロンプトを開いてください。
# vagrant box add laravel/homestead 中略 1) hyperv 2) parallels 3) virtualbox 4) vmware_desktop Enter your choice: 3
使っているアプリケーションの選択肢が出ますが、今回はVirtualBoxを使うので3を選んでください。
ダウンロードにはしばらく時間がかかります。
設定ファイルのダウンロード
次に適当なディレクトリで以下のコマンドを実行してください
# cd (どこかのフォルダ) # git clone https://github.com/laravel/homestead.git homestead
例では、Homestead というフォルダに設定ファイルがダウンロードされます。
Homestead フォルダに入って初期化コマンドを実行します
# cd Homestead # init.bat ※ Windows系の場合。MacOS/Linuxの場合は init.sh になります。
公開鍵の用意
VM環境へのログインは、SSHの鍵を使いますので、鍵ファイルが必要です。すでに持っている人はそれを使ってください。
持っていない場合は、作成する必要があります。MacOS/Linux環境の場合は以下のようになります。ホームディレクトリに移動して、ssh-keygen コマンドで作成します。
# cd ~/ # ssh-keygen -t rsa
Windows系の場合は、OSの機能では作成する方法がありませんので、何かしらのアプリを使う必要があります。Gitを使って生成する方法がありますので、こちらの記事を参考にしてみてください。
なお、これら作成した鍵ファイルは、ユーザーフォルダの.sshフォルダに置いておくのが良いと思います。
設定方法
設定は Homestead.yaml ファイルに記述されています。
主要な設定項を載せておきます。
項目 | 内容 |
---|---|
ip | IPアドレス |
memory | メモリの容量 |
cpus | CPUの数 |
provider | 仮想化ソフトウェア |
authorize | 公開鍵 |
keys | 秘密鍵 |
folders | 共有フォルダ |
少なくとも、IPアドレスと共有フォルダ自身の環境に合わせて見直す必要があるかと思います。
IPアドレスは、ネットワーク内の他のPCと被らないような設定にする必要があります。DHCPで管理している場合は注意しましょう。
ネットワークに関してはアダプタが2つあって、一つは10.0.2.xx/24のVM同士をつなぐローカルネットワークと、上記のIPで指定したNAT経由の接続で、デフォルト設定だと192.168.10.xx/24 の2つのネットワークができます。とりあえず、デフォルト設定だとホストPCからは192.168.10.10で接続できます。
使用するPCのスペックに余裕があれば、CPU数やメモリ容量を増やしてもいいかとおもいます。
設定が済んだら、Homesteadをダウンロードしたフォルダで、下記のコマンドを実行します。
# vagrant up
初回起動はイメージのダウンロードを含むようで非常に時間がかかります。
ただ、とにかくダウンロードが遅いです。
起動時に、ダウンロード先のURLが表示されると思います。
こんな感じの奴です
homestead: Downloading: https://vagrantcloud.com/laravel/boxes/homestead/versions/9.7.2/providers/virtualbox.box
このURLをメモっておいて直接ダウンロードして登録する方法もあるようです。
特に問題なければ、しばらくしたら起動するはずです。
VirtualBoxマネージャを見るとVMが追加されているのが確認できるかと思います。
そのほかのvagrantのコマンドを記載します。
主要なvagrantのコマンド
コマンド | 内容 |
---|---|
vagrant up | VMの起動 |
vagrant up –provision | VMの設定を更新して起動 |
vagrant reload | VMの再起動 |
vagrant ssh | 仮想マシンにログイン |
vagrant halt | 仮想マシンの終了 |
vagrant halt default | 複数の仮想マシンの終了 |
vagrant status | 仮想マシンの状態を表示 |
普段使いにはこれらのコマンドを覚えておけば問題ないと思います。
また、コマンドはVagrantfileがあるフォルダで行いましょう。(今回は git で落としたhomestead フォルダですね)
仮想環境の構築ができたので次のセクションでは、Laravelのインストールをしていきます。