本文记录搭建本地虚拟机环境
准备工作:
1、下载Virtualbox
地址:https://www.virtualbox.org/wiki/Downloads
2、下载Vagrant
地址:https://www.vagrantup.com/downloads.html
我因为是win10 所以都是根据windows版本下载.
3、下载自己需要的box
Vagrant的开源社区提供了很多打包好的操作系统,类似dockerhub一样。在vagrant的世界里被称为box。
这里注意,我下载的是centos7。vagrant提供的在线安装,真的很慢很慢,所以我拿到box的链接,用迅雷下载好。之后执行安装设置
我有保存到某云,提供链接:
链接:https://pan.baidu.com/s/1f0SUTLORGor3TI9RtIIxSg
提取码:qrfw
现在开始操作:
$ vagrant box add{title}{url}
$ vagrant init{title}
$ vagrant up
vagrant box add 是添加box的命令
其中{title}可以自行设置,我使用的是Centos7 ,{url}是下载到本地box路径。我的路径是:D:/centos-7.0-x86_64.box
这里记录下我在搭建上我碰到的常见问题(每个人碰到的问题也许会不一样)
首先先说明下我安装的版本是Vagrant 2.2.6 && VirtualBox6.1
vagrant init
1.报错如下:
The user that is running Vagrant doesn't have the proper permissions
to write a Vagrantfile to the specified location. Please ensure that
you call `vagrant init` in a location where the proper permissions
are in place to create a Vagrantfile.
vagrant init时出现以上报错时,需要以管理员权限打开cmd
2.init成功则:
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.
vagrant up 问题
1、No usable default provider could be found for your system报错
当前vargrant2.2.7可以支持到virtualbox6.1,问题可能不会出现
经过一番google/百度,查明vagrant2.2.6还没有支持到virtualbox6.1
解决方案如下:
找到vagrant目录结构的下的如下文件
1.1:
L:\Vagrant\embedded\gems\2.2.6\gems\vagrant-2.2.6\plugins\providers\virtualbox\plugin.rb 在这个文件里增加6.1版本
代码如下:
autoload :Version_6_1, File.expand_path("../driver/version_6_1", __FILE__)
1.2:
L:\Vagrant\embedded\gems\2.2.6\gems\ vagrant2.2.6\plugins\providers\virtualbox\driver\meta.rb 在这个文件增加6.1版本
代码如下:
"6.1"=>Version_6_1,
1.3:
当前目录下新建version_6_1.rb文件
内容如下:
require File.expand_path("../version_6_0", __FILE__)
module VagrantPlugins
module ProviderVirtualBox
module Driver
# Driver for VirtualBox 6.1.x
class Version_6_1 < Version_6_0
def initialize(uuid)
super
@logger = Log4r::Logger.new("vagrant::provider::virtualbox_6_1")
end
end
end
end
end
成功爬出第一个坑!
当我再在进行vagrant up时,又成功入坑
2、error: VT-x is not available (VERR_VMX_NO_VMX)报错
又是一番google/百度,原来是win10系统的问题。
首先。管理员打开cmd小黑窗
输入bcdedit /set hypervisorlaunchtype off
环境搭建完成 可以正常vagrant up,并进行vagrant ssh。