Laravel

Homestead環境のVNマシン名を設定する

Laravelの環境構築のときなど、2つめのHomestead環境を立ち上げようとした際、
以前のバーチャルマシンが残っている状態だと、以下のエラーが出て上手くいかない事があります。。

複数のHomestead環境を立ち上げるために

エラーの詳細

A VirtualBox machine with the name 'homestead-7' already exists.

初期設定では、バーチャルマシンのマシン名がhomestead-7になっているっぽく、既に存在する旨のエラーが表示されました。

解決策

その場合、 Homestead.yaml に name: "laravel-1" を追加するだけでOKです。
※ 他にも同時に起動するためには、 ip や port など設定箇所はいくつかありますが、今回は割愛させていただきます。

---
ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: virtualbox

name: "laravel-1"

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

features:
    - mariadb: false
    - ohmyzsh: false
    - webdriver: false

# ports:
#     - send: 50000
#       to: 5000
#     - send: 7777
#       to: 777
#       protocol: udp

また、起動時に Homestead.yaml を再読み込みするためには、以下のコマンドを実行できます。

$ vagrant up --provision

まとめ

他のサイトで、 scripts/homestead.rb のデフォルト値をそのまま編集してしまう
やや強引な方法も見つかりましたが、、

こちらのrubyのスクリプトを読み解いてみた事で、
Homestead.yaml の設定方法に辿り着くことができました。参考になれば。

-Laravel
-, , ,

© 2020 teckmemo