Ubuntu系统中部署Vagrant和VirtualBox的图文教程

一、前言

1.Vagrant是一个搭建完整的虚拟开发环境的工具

2.实验环境

在Win10中利用VMWare Workstation创建一台Ubuntu虚拟机,版本为64位Ubuntu Desktop 16.04,4核,4G内存;然后在Ubuntu中安装Vagrant和VirtualBox,所用到的Vagrant和VirtualBox版本都是截至2018/04/08时候的最新版。

之所以使用VMWare Workstation来创建Ubuntu的虚拟机而不是VirtualBox,跟下面即将说到的“ubuntu的CPU必须要支持虚拟化”有关,因为在VirtualBox中我不知道怎么设置才能使得创建的ubuntu的CPU支持虚拟化,而在VMWare Workstation中,可以通过如下方法进行开启。

3.关键点

因为我们所做的操作是“在Ubuntu中利用Vagrant+VirtualBox创建虚拟机”,因此,ubuntu的CPU必须要支持虚拟化才行——注意,是Ubuntu的CPU,不是本机Windows。

一般我们要在笔记本电脑上利用VMWare Workstation或者VirtualBox来创建虚拟机时,是需要笔记本的CPU支持虚拟化的,通常笔记本的CPU都支持虚拟化,只需在笔记本电脑开机时进入BIOS进行设置开启即可。而这里因为要在ubuntu中创建虚拟机,因此需要ubuntu的CPU支持虚拟化。

如果你的ubuntu系统不支持CUP虚拟化,那么就没必要按下面步骤进行安装了,因为一定会失败,必须要将ubuntu的CUP设置成支持虚拟化。

在Ubuntu中可以通过下面的方法验证CPU是否支持虚拟化

查询实验时的虚拟机:

4.提前列一下接下来可能会用到的vagrant命令

$ vagrant init # 初始化,用法:vagrant init 已有的box名称

$ vagrant up # 启动虚拟机,对应就是关机

$ vagrant halt # 关闭虚拟机

$ vagrant reload # 重启虚拟机

$ vagrant ssh # SSH 至虚拟机

$ vagrant suspend # 挂起虚拟机——只是暂停,虚拟机内存等信息将以状态文件的方式保存在本地,可以执行恢复操作后继续使用

$ vagrant resume # 唤醒虚拟机—— 与前面的暂停相对应

$ vagrant status # 查看虚拟机运行状态

$ vagrant destroy # 销毁当前虚拟机,删除后在当前虚拟机所做进行的除开Vagrantfile中的配置都不会保留

#box管理命令

$ vagrant box list # 查看本地box列表

$ vagrant box add

# 添加box到列表,用法:vagrant box add 按需起的box名称 box所在url或者本地路径

$ vagrant box remove

# 从box列表移除,用法:vagrant box remove 你的box名称

5.安装之前最后一点——在我初次安装时因为ubuntu的CPU不支持虚拟化,我又没注意到这点,因此安装过程中遇到了一些错误,放在文章末尾了,有一定的参考意义。

二、安装步骤

1、安装Virtualbox

1.1安装之前先安装virtualbox的依赖包,否则会有依赖包报错

命令:sudo apt-get install -y libsdl1.2debian

1.2安装VirtualBox

我看其他教程有使用apt-get install命令安装virtualbox的,我有试过,不过该命令安装的不是最新版,所以我采取的办法是先上网把virtualbox下载下来,然后上传到ubuntu当中(上传到任意目录),接着切换到virtualbox包所在目录,执行:

sudo dpkg -i virtualbox-5.2_5.2.8-121009-Ubuntu-xenial_amd64.deb

因为我已经安装过virtualbox所需依赖包了,所以安装过程没有报错,假若你安装的时候报错了,则将所需依赖包使用apt-get install命令进行安装,之后再次安装virtualbox即可。

1.3安装完成之后使用virtualbox --help命令进行检查

如下图,输出virtualbox帮助信息,说明virtualbox安装成功

2、vagrant是ruby开发的,先安装ruby相关的东西

命令:sudo apt-get -y install ruby rubygems

注:我不知道这一步是否必须,我看个别教程里面有的安装了,有的没有,反正我是跟着做了。。。

3、在Vagrant官网下载Vagrant的deb软件包

下载命令:sudo wget https://releases.hashicorp.com/vagrant/2.0.3/vagrant_2.0.3_x86_64.deb

安装命令:sudo dpkg -i vagrant_2.0.3_x86_64.deb

安装完成使用vagrant --version进行检查,如上图。

也可以直接使用apt-get安装,命令:sudo apt-get install vagrant

不过同样的,apt-get命令安装的不是最新版本。

4、下载官方封装好的基础镜像放到合适的目录里面,是一个格式为box的文件,地址:http://www.vagrantbox.es/,可以在ubuntu中使用wget命令下载,也可以再本地Windows上下载下来,然后上传到ubuntu里面。

官网界面:

我下载的box镜像:

5.创建一个开发目录,并切换到该目录下

命令:

sudo mkdir vagrant_project
cd vagrant_project/

注:创建该目录是用来存放vagrant配置文件的,因此下面第7步的初始化步骤必须在该目录下执行,vagrant才会默认把Vagrantfile配置文件放在该目录下;创建的目录名称是随意的,没有特定要求。

6、添加镜像到 Vagrant

命令:sudo vagrant box add ubuntu1604 /data/ios/centos-7.0-x86_64.box

注:这里我添加的镜像是centos-7.0-x86_64.box,但是我给它起的名字却是ubuntu1604,是因为一时手残了,名字其实可以根据喜好随便起,没影响

执行完之后使用sudo vagrant box list查看添加的镜像是否存在,如上图。

7、初始化开发环境

命令:sudo vagrant init ubuntu1604

注:“ubuntu1604”是上一步添加镜像时所起的名字;且这一步初始化操作必须在第5步创建的开发目录中执行,否则你创建的目录就没用了;最后,初始化成功后会生成配置文件Vagrantfile

8、启动虚拟机

在第5步创建的工作目录下执行下面命令进行启动虚拟机

命令:sudo vagrant up

(1)由输出来看启动没有问题

(2)注意上图的最后一行:vagrant默认把创建的虚拟机的/vagrant目录映射到ubuntu的/home/suxy/vagrant_project目录上了(/home/suxy/vagrant_project就是第5步创建的开发目录)——这样一来,这两个目录之间是共享的。

(3)Vagrant默认创建的虚拟机账号密码为:vagrant/vagrant

(4)如果这一步执行vagrant up失败了,在修改完错误之后再次启动虚拟机前,需要先执行vagrant halt停止虚拟机、vagrant destroy销毁虚拟机。

9.验证

使用sudo vagrant ssh命令连接vagrant创建的虚拟机

若还有其他个性化的设置,可参考文章头提到的博文。

三、部署时遇到的错误

(1)错误一:这里所列举的错误是在ubuntu的CPU不支持虚拟化的情况下执行第8步启动虚拟机时所报的错误,如下

错误解决可查看:https://www.cnblogs.com/csliwei/p/5860005.html

根据博文中的说法,如果是下载的box文件(我操作时确实是下载的box文件),vagrant box add和init之后启动,可能出现长时间无法通过vagrant ssh登陆的问题

说是有两种可能

(1)其一是虚拟机确实启动失败,由于vagrant默认不显示虚机启动界面,所以不太好判断。因此需要在Vagrantfile配置中增加vb.gui = true选项,就可以查看虚机的启动过程(我的理解是加上该选项之后,可以使得在vagrant up启动虚拟机的时候显示virtualbox启动界面,以便查看是否是PC的vt-x支持没有开启)。常见问题是没有开启PC的vt-x支持,进BIOS修改配置即可。

(2)其二是如果使用拷贝过来的Vagrantfile进行up启动

可能会由于ssh认证机制导致失败。vagrant默认采用key登录,但所用的KeyPair可能没有正常配置。

于是先对第一种可能的错误进行验证

在Vagrantfile文件中加入:

config.vm.provider :virtualbox do |vb|

vb.gui = true

end

如下:

因为前面执行vagrant up失败了,所以先执行vagrant halt停止虚拟机、vagrant destroy销毁虚拟机

接着使用sudo vagrant up命令再次启动虚拟机,果然再次出错了,不过因为在Vagrantfile配置中增加vb.gui = true选项,所以这次报错时virtualbox的报错也显示出来了,如下图——果然是因为CUP不支持虚拟化的缘故

为了确认是否Ubuntu的CPU确实不支持虚拟化,通过下图中所说的方法查看

实际查询如下图:

果然。。。

(2)错误二:在ubuntu的CPU支持虚拟化的情况下执行第8步启动虚拟机时出现的问题

正如上图红框中所说的,使用的box镜像可能有问题,因此我换了Centos的box进行,之后安装成功。

总结

以上所述是小编给大家介绍的Ubuntu系统中部署Vagrant和VirtualBox的图文教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

您可能感兴趣的文章:

  • VirtualBox安装Ubuntu Server16.04虚拟机的图文教程
  • VirtualBox虚拟机安装Ubuntu详细教程(图文)
  • virtualbox中ubuntu和windows共享文件夹设置教程
  • ubuntu 下VirtualBox 如何实现共享设置
  • VirtualBox 虚拟机中安装 Ubuntu 12.04(图文教程)
  • 在虚拟机virtualbox中安装ubuntu的图文教程
(0)

相关推荐

  • VirtualBox虚拟机安装Ubuntu详细教程(图文)

    最近我初次接触了Linux操作系统,在VirtualBox虚拟机上安装了Ubuntu来学习,顺便把安装过程分享到博客.这篇教程面向超新手. VirtualBox简介 VirtualBox是Oracle旗下的一款开源的,免费的虚拟机软件.也是本教程所用的虚拟机软件. 官方下载地址:https://www.virtualbox.org/wiki/Downloads 根据你正使用的操作系统,选择相应的最新版本进行下载并安装,例如Windows用户就下载VirtualBox x.x.x for Wind

  • 在虚拟机virtualbox中安装ubuntu的图文教程

    距离ubuntu最新版发布已经差不多半年了,博主近来对linux系统有了兴趣,奈何资金不足无法购置一台新机来安装ubuntu.所以想到了虚拟机. 虚拟机的选择 VMwareWorkstation,功能强大,虚拟机的显卡也不错.VMware缺点是很不绿色,会对你的系统有一些影响.而vmare workstation本身有点臃肿,占用系统资源比较多. Virtualbox虚拟机相对比VMWare workstation轻量级一些,运行一般的游戏的话,性能不输于vmware.但是配置起来相对麻烦,而且

  • VirtualBox 虚拟机中安装 Ubuntu 12.04(图文教程)

    距离ubuntu最新版发布已经差不多半年了,博主近来对linux系统有了兴趣,奈何资金不足无法购置一台新机来安装ubuntu.所以想到了虚拟机.下面介绍了VirtualBox 虚拟机中安装 Ubuntu 12.04. 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们.

  • VirtualBox安装Ubuntu Server16.04虚拟机的图文教程

    1.新建虚拟机 VirtualBox点击新建,选择Linux Ubuntu 虚拟硬盘类型选择VHD(虚拟硬盘) 动态分配 选择好保存位置和硬盘大小,创建. 2.安装系统 选择"存储"--"控制器",加载Ubuntu Server光盘镜像 选择好后启动. 选英文 位置信息,选择other--Asia--China 系统语言和键盘设置 选English(US) 设置计算机名 用户名,密码 是否使用弱密码,是 是否加密,否 时区是否正确 磁盘分区,默认就行 网络代理 是否

  • ubuntu 下VirtualBox 如何实现共享设置

    ubuntu 下VirtualBox 实现共享设置: 使用系统VirtualBox,另外又装个Ubuntu  ,想让两个系统实现共享设置,经过上网查资料,得以实现,这里就说下具体步骤: 一.VirtualBox在winxp下虚拟ubuntu 在winxp下虚拟ubuntu,在ubuntu下访问win的共享文件夹时出现如下错误: /sbin/mount.vboxsf: mounting failed with the error: No such device 1,若要使用共享文件夹功能,必须安装

  • virtualbox中ubuntu和windows共享文件夹设置教程

    本文介绍了virtualbox中ubuntu和windows共享文件夹设置,具体如下: 系统平台:win8.1.virtualbox4.3.8.ubuntu12.04 1.安装VBoxGuestAdditions_4.3.8.iso增强工具,安装完毕后根据提示重启Ubuntu,具体操作如下: a.把VBoxGuestAdditions_4.3.8.iso镜像到Ubuntu中,存放在Ubuntu的/media目录中,操作如下: b.安装virtualbox增强包 linjiqin@ubuntu:~

  • Ubuntu系统中部署Vagrant和VirtualBox的图文教程

    一.前言 1.Vagrant是一个搭建完整的虚拟开发环境的工具 2.实验环境 在Win10中利用VMWare Workstation创建一台Ubuntu虚拟机,版本为64位Ubuntu Desktop 16.04,4核,4G内存:然后在Ubuntu中安装Vagrant和VirtualBox,所用到的Vagrant和VirtualBox版本都是截至2018/04/08时候的最新版. 之所以使用VMWare Workstation来创建Ubuntu的虚拟机而不是VirtualBox,跟下面即将说到的

  • ubuntu系统下部署zabbix服务器监控的方法教程

    前言 最近需要部署一套zabbix监控服务器,之前只是玩过zabbix的注入漏洞,但还没布置过,发现网上好多都是centos+源码编译的zabbix,因此写下此篇记录下安装过程,下面来一起看看详细的介绍: 环境ubuntu+apache+mysql+php,没搭建的可以参考这篇文章 php设置: //重要,安装zabbix时会检测这些内容是否已经修改 vim /etc/php5/apache2/php.ini ;date.timezone ===>去掉注释在=后添加 Asia/Shanghai

  • ubuntu系统下Python虚拟环境的安装和使用教程

    前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开发就显得很有必要. 安装虚拟环境 •步骤: •打开Linux终端(快捷键Ctrl+Alt+T),输入命令: sudo apt install python-virtualenv sudo easy_install virtualenvwrapper 说明:以上两条命令逐条执行,完成后虚拟环境安装完毕. 或者可以使用pip安装,前提是安装了pip,一般python自

  • Windows系统中搭建Go语言开发环境图文详解

    目录 1.Go语言简介 2.安装Git 3.Go 工具链(编译器)安装 3.1.环境变量GOROOT 3.2.环境变量GOPATH 3.3.Go常用命令 4.包管理 4.1.go module 4.2.gopm 5.编写Go语言代码的IDE或编辑工具 5.1.基于VSCode的Go开发环境 5.1.1.安装VSCode 5.1.2.安装插件 5.1.3.常用配置 5.2.GoLand 5.3.Vim 5.4.其他Go代码编写工具 6.Go语言学习资料分享 本文详细讲述如何在 Windows 系统

  • Linux系统下安装jdbc与tomcat的图文教程

    一.下载Linux版本的jdbc与tomcat 1.1 下载Linux版本的jdbc: 1.1.1 1.1.2 1.1.3 在进行1.1.3操作之前得先勾选我同意协议 1.1.4 下载完成 1.2下载Linux版本的tomcat 1.2.1 1.2.2 1.2.3 下载完成 二.将下载好的两个压缩包解压 如果遇到一些不能操作的问题,得给文件夹或者文件设置权限2.1在Linux 的root根目录下创建software 指令为: 在root目录下会多出 2.2把两个包导入到software中,然后解

  • Windows中Tomcat整合到Eclipse的图文教程

    这里使用的是Eclipse Java EE IDE for Web Developers 4.7.1a,Apache Tomcat 8.0.47. 两个都依赖JDK,请事先安装配置好JDK. 首先,要下载tomcat,下载地址:https://tomcat.apache.org/download-80.cgi,下载64-bit Windows zip. 下载后,是这样的: 解压到软件安装位置,添加tomcat的bin路径到系统环境变量. 鼠标右击"计算机"选择"属性"

  • 在win10系统下安装Mysql 5.7.17图文教程

    操作系统win10  MySQL为官网下载的64位zip解压缩Community版本. 因为想要在公司电脑上安装Mysql,于是到官网上下载了最新版本的Mysql-5.7.17,首先通过网上教程进行安装,解压,然后在C盘新建了一个Mysql0104目录(作为Mysql的安装目录),将解压过后Mysql-5.7.17文件夹中的内容拷贝至安装目录Mysql中. 文件内容如下: 之后按照网上攻略:以管理员身份运行命令行窗口,mysqld -install 安装mysql:这一步理论不会有什么问题 正常

  • IntelliJ IDEA 热部署插件JRebel 安装使用图文教程

    IntelliJ IDEA 简介 IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手.代码自动提示.重构.J2EE支持.各类版本工具(git.svn.github等).JUnit.CVS整合.代码分析. 创新的GUI设计等方面的功能可以说是超常的.IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主.它的旗舰版本还支持HTML,CSS,

  • Ubuntu 18.04下VMware Tools安装配置图文教程

    本文记录了Ubuntu 18.04下VMware Tools安装配置图文教程,供大家参考,具体内容如下 1.打开虚拟机VMware Workstation,启动Ubuntu系统,菜单栏 - 虚拟机 - 安装VMware Tools,不启动Ubuntu系统是无法点击"安装VMware Tools"选项的,如下图: 2.等待几分钟会发现ubuntu桌面多了VMware Tools镜像,点击它,其里面有一个VMwareTools-tar.gz文件 3.接下来我们把VMwareTools-ta

  • Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)

    由于最近学习tensorflow的需要,tensorflow是在Linux环境下,使用的是Python.为了方便程序的调试,尝试在Windows下的Pycharm远程连接到虚拟机中Centos下的Python环境.(这里我采用的是ssh的远程连接) 1.准备工作: 固定centos的IP,这里我的固定IP为 192.168.254.128 . centos中安装ssh.(这里我采用的是ssh的远程连接) centos中Python环境已安装. 2.打开Pycharm,File->Settings

随机推荐