我有一个自定义boot2docker,此配置附加到.iso
config.vm.provider "virtualbox" do |v|
v.customize ['storageattach', :id, '--storagectl', 'SATA', '--port', 0, '--device', 0, '--type', 'dvddrive', '--medium', File.expand_path("../boot2docker.iso", __FILE__)]
v.customize ['modifyvm', :id, '--nictype1', 'virtio']
end
config.vm.network "private_network", ip: "192.168.10.10", id: "default-network", nic_type: "virtio"
目录中的我的文件
mycompany/
dockerhost/
Vagrantfile
Vagrantfile
替换上述内容的 docker-host 的vagrantfile。
## This is required with the plugin winnfsd
config.vm.network "private_network", type: "dhcp"
config.vm.synced_folder "../", "/vagrant", type: "nfs"
当我使用 vagrant up 启动 dockerhost 时,它运行良好并且NFS设置正确,但是当我启动服务容器 vagrant up myservice < / em>的
显示错误
==> myservice: Docker host is required. One will be created if necessary...
myservice: Docker host VM is already ready.
==> myservice: Syncing folders to the host VM...
dockerhost: Mounting shared folders...
dockerhost: /var/lib/docker/docker_1472079332_51007 => C:/Users/myuser/Desktop/mycompany
Vagrant was unable to mount VirtualBox shared folders. This is usually because the filesystem "vboxsf" is not available. This filesystem is made available via the VirtualBox Guest Additions and kernel module.
Please verify that these guest additions are properly installed in the guest. This is not a bug in Vagrant and is usually caused by a faulty
Vagrant box. For context, the command attemped was:
set -e
mount -t vboxsf -o uid=`id -u docker`,gid=`getent group docker | cut -d: -f3` b5973a5087 /var/lib/docker/docker_1472079332_51007 mount -t vboxsf -o uid=`id -u docker`,gid=`id -g docker` b5973a5087 /var/lib/docker/docker_1472079332_51007
The error output from the command was:
mount: mounting b5973a5087 on /var/lib/docker/docker_1472079332_51007 failed: Protocol error
看起来Vagrant在启动容器时会安装另一个体积。
有关如何修复它的任何想法? 或者为什么流浪汉为我做了另一个?
韩国社交协会
答案 0 :(得分:0)
Vagrant和VirtualBox版本不兼容问题
这解决了我的问题:
Vagrant 1.8.5应与最新的VirtualBox 5.1.2版本兼容,但我们目前拥有的VirtualBox Guest Additions版本为5.0.20,最新的boot2docker版本为5.0.24。两者都很可能与VirtualBox 5.1.2有关。
所以现在避免使用VirtualBox 5.1.x并坚持使用:
Vagrant 1.7.4 - 1.8.4 VirtualBox 5.0.x
参考: https://github.com/blinkreaction/boot2docker-vagrant/issues/83