这段时间一直在配置docker LNMP环境,无奈感觉win10 docker还是和生产环境有些差距,再加上走了好多的坑还是有些问题,决定搭建虚拟机继续学习docker..(小白勿喷)
准备工作:
1、下载Virtualbox
地址:https://www.virtualbox.org/wiki/Downloads
image2、下载Vagrant
地址:https://www.vagrantup.com/downloads.html
image我因为是win10 所以都是根据windows版本下载.
3、下载自己需要的box
Vagrant的开源社区提供了很多打包好的操作系统,类似dockerhub一样。在vagrant的世界里被称为box。
这里注意,我下载的是centos7。vagrant提供的在线安装,真的很慢很慢,所以我拿到box的链接,用迅雷下载好。之后执行安装设置
现在开始操作:
$ 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 up 问题就来了
1、No usable default provider could be found for your system报错
image经过一番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版本
image代码如下:
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版本
image代码如下:
"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
image环境搭建完成 可以正常vagrant up,并进行vagrant ssh。
网友评论