在Vagrant中以编程方式获取虚拟机(VM)的IP地址,可以通过以下步骤实现:
Vagrant.configure("2") do |config|
config.vm.network "private_network", ip: "192.168.33.10"
end
vagrant up
启动虚拟机。vagrant ssh -c "hostname -I | awk '{print $1}'"
该命令将通过SSH连接到虚拟机,并执行hostname -I
命令来获取虚拟机的IP地址。然后使用awk
命令提取第一个IP地址。
Vagrant.configure("2") do |config|
config.vm.network "private_network", ip: "192.168.33.10"
config.vm.provision "shell", inline: <<-SHELL
echo "IP_ADDRESS=$(hostname -I | awk '{print $1}')" >> /vagrant/ip_address.txt
SHELL
end
该代码将在虚拟机启动时执行一个Shell脚本,并将虚拟机的IP地址写入/vagrant/ip_address.txt
文件中。然后可以在Vagrantfile所在的目录中读取该文件以获取虚拟机的IP地址。
这样,通过以上步骤,就可以在Vagrant中以编程方式获取虚拟机的IP地址。请注意,以上答案中没有提及任何特定的云计算品牌商,以遵守问题要求。
领取专属 10元无门槛券
手把手带您无忧上云