📝

Vagrant の設定(主にネットワーク)あれこれ

2021/04/05に公開

Vagrant の設定あれこれ

細かい事は公式サイトをみるといいんだろうけど英語だし・・・ちょっとしたことなんだけど良く忘れるのでメモっておく。

VAGRANT DOC / 日本語訳

超おまかせ設定

最低限の設定、アクセスは 127.0.0.1:3333 でアクセスする。

Vagrantfile
config.vm.define :web do |web|
  web.vm.network :forwarded_port, guest: 22, host: 3333, host_ip: "127.0.0.1", id: "ssh", auto_correct: true
end

Vagrant起動時にshellを実行させる設定&別パーティションの共有フォルダ追加する設定

シェルスクリプトを使ったプロビジョニング

Vagrantfile
config.vm.define :web1 do |web1|
   web1.vm.synced_folder "C:/Users/temp/vagrant_share", "/vagrant_share", type: "nfs"

  web1.vm.provision "shell", inline: <<-EOT
    echo hello
  EOT
end

Vagrant単位に使用するメモリや、サーバ名の設定

Vagrantfile
config.vm.define :web2 do |web2|
  web2.vm.provider "virtualbox" do |v| 
    v.customize ["modifyvm", :id, "--memory", 512] 
    v.name = "web2" 
  end 
end

プライベートネットワークの設定

http://docs.vagrantup.com/v2/networking/private_network.html

Vagrantfile
config.vm.define :web3 do |web3|
  web3.vm.network :private_network, ip: "192.168.11.200" 
end

パブリックネットワークの設定

http://docs.vagrantup.com/v2/networking/public_network.html

Vagrantfile
config.vm.define :web4 do |web4|
  web2.vm.network :public_network, ip: "192.168.0.128" 
end

ホストOSのhostsファイルにゲストOSのホスト名・IPを追加・削除してくれるVagrantプラグイン

https://github.com/cogitatio/vagrant-hostsupdater

コマンドラインで vagrant plugin install vagrant-hostsupdater を実行する。通常通りに vagrant upで、ホストOS側の hosts ファイルにゲストOSのホスト名・IPを追加してくれるそうな。

config.vm.hostname = "hogehoge.devel"
config.vm.network :private_network, ip: "192.168.33.250"

環境変数で Vagrant の bridge を指定できるようにする

複数のネットワークカードがある場合、これは便利かも。

環境変数で Vagrant の bridge を指定できるようにする

リンク

vagrantのネットワークについて
Vagrantのネットワーク周りのあれこれ
vagrantのネットワーク設定を見てみよう。
vagrantのprivate_networkのIP指定でエラーが出る人は今すぐアップデートしましょう

GitHubで編集を提案

Discussion