使用Vagrant和Virtual Box搭建虚拟开发环境

一、Vagrant介绍

未分类

Vagrant是一款用来构建虚拟开发环境的外挂工具,可以简化虚拟机配置和管理。它底层支持VirtualBox、VMware、AWS等,非常适合使用php/python/ruby/java语言开发web应用。
Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用Chef创建自动化虚拟环境。

下载安装:
点击前往官网下载https://www.vagrantup.com/downloads.html

Vagrant支持全平台的系统。

未分类

安装过程也是简单粗暴,直接下一步就好。注意,安装之后并没有出现程序图标(至少我的Mac没有),需要在命令行里敲vagrant查看有没有安装成功。如果不行,请检查一下$PATH里面是否包含vagrant所在的路径。
安装Vagrant也一并把Virtual box安装下,虽然Vagrant也支持VM虚拟机,不过是收费的。安装Virtual box可以免费使用。

二、Vagrant命令

未分类

三、使用Vagrant安装配置虚拟机

安装有两种方式,可以在线安装也可以离线安装,考虑到国内互联网大环境,不推荐在线安装。这里采用离线安装的方式。

0x1 下载Box镜像

安装虚拟机需要下载ISO镜像,创建虚拟机并配置环境等一系列步骤。而Vagrant开源社区提供了许多已经打包好的操作系统,我们称之为box。你可以从box下载地址(下文列出),找到你想要的box,当然你也可以自己制作一个。

  • 官方仓库:https://atlas.hashicorp.com/boxes/search
  • 官方镜像:https://vagrantcloud.com/boxes/search
  • 第三方仓库:http://www.vagrantbox.es/

0x2 安装Box

将你下载的Box放在你需要的文件夹里,打开终端。输入:

vagrant init centos/7 //创建虚拟机
vagrant up  //运行

未分类

这样就开始创建虚拟机了,但是如果出现下面的报错:

未分类

说明电脑没有开启Intel的虚拟化技术,需要进入BIOS打开。

未分类

安装好了之后会发现Virtual box下面多了一台虚拟机,说明安装完成。

未分类

0x2 SSH连接

经过以上操作后,我们完成了centos7虚拟机的安装,现在需要登录虚拟机,进行操作,有以下三种方式:

  • 在开发环境的目录(有Vagrantfile的地方),登录虚拟机
vagrant ssh
  • 使用第三方工具,如secureCRT)或系统ssh命令进行登录,IP为Vagrantfile中指定的hostonly地址,用户名与密码默认都是vagrant

  • 在宿主机的命令行,ssh到本地端口的方式登录。观察客户机的22端口映射到宿主机的是多少,一般是2200或者2222,用户名与密码默认都是vagrant

$ ssh -p 2222 127.0.0.1

0x3 Box的删除

想要删除box首先退出SSH连接状态

exit //退出ssh连接
vagrant destory //删除虚拟机