昨天我把头撞在墙上半天,直到意识到自己正在运行旧版本的Virtualbox(5.0.x)和Vagrant(1.8.0)
更新到VirtualBox 5.1.x和Vagrant 1.8.7,并获得了更好的结果
基本上,ubuntu/xenial32
和ubuntu/xenial64
图像是有缺陷的,因为它们不是vagrant
用户开箱即用的。
这违反了Vagrant 规范
我最终v0rtex/xenial64
按照此错误报告中的建议使用了。不知道为什么canonical
不解决这个问题
我的流浪文件如下
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "v0rtex/xenial64"
config.vm.network :private_network, ip: "10.10.10.10"
config.ssh.username = 'vagrant'
config.ssh.password = 'vagrant'
config.vm.provider :virtualbox do |vb|
vb.name = "supercool"
vb.customize ["modifyvm", :id, "--memory", "768"]
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
end
如果您仍想使用canonical
提供的图像,则可以使用以下方法
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "ubuntu/xenial64"
config.vm.network :private_network, ip: "10.10.10.10"
config.ssh.insert_key = true
config.ssh.forward_agent = true
config.vm.provider :virtualbox do |vb|
vb.name = "supercool"
vb.customize ["modifyvm", :id, "--memory", "768"]
vb.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
end
end
如果执行此操作,则该/vagrant
文件夹将由ubuntu:ubuntu
而不是拥有vagrant:vagrant
。如果您有依赖vagrant
用户的脚本,它们将会中断