Vagrant+VirtualBox搭建CentOs7环境笔录

本文记录搭建本地虚拟机环境

准备工作:

1、下载Virtualbox

地址:https://www.virtualbox.org/wiki/Downloads

image

2、下载Vagrant

地址:https://www.vagrantup.com/downloads.html

image

我因为是win10 所以都是根据windows版本下载.

3、下载自己需要的box

Vagrant的开源社区提供了很多打包好的操作系统,类似dockerhub一样。在vagrant的世界里被称为box。

地址:http://www.vagrantbox.es/

这里注意,我下载的是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,问题可能不会出现

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。

你可能感兴趣的:(Vagrant+VirtualBox搭建CentOs7环境笔录)