根据documentation在 GUI 模式下运行 Vagrant VM 很容易:
config.vm.provider "virtualbox" do |v|
v.gui = true
end
但是,有没有办法从命令行执行此操作,例如在运行
vagrant up
时?例如,vagrant up --gui
vagrant up --headless
不同的用户可能更喜欢启动或不启动 UI;似乎不应该在每个人都会使用的 Vagrantfile 中指定它!
最佳答案
GUI 选项是特定于提供程序的(并且只有很少的提供程序支持它),因此顶级 vagrant 命令为其添加开关感觉不合适。
根据我的经验,GUI 最常见的用例是:
如果您有一个可以正常打开和关闭 GUI 的设置,则可以使用环境变量。例如在 Vagrantfile 中是这样的:
# Returns true if `GUI` environment variable is set to a non-empty value.
# Defaults to false
def gui_enabled?
!ENV.fetch('GUI', '').empty?
end
Vagrant.configure('2') do |config|
config.vm.provider 'virtualbox' do |v|
v.gui = gui_enabled?
end
end
然后在 *nix 系统上的命令行上:
GUI=1 vagrant up
在 Windows 上:
set GUI=1
vagrant up
关于vagrant - 从命令行指定 headless 或 GUI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23926945/