文档章节

Vagrant 起步

techafei
 techafei
发布于 2015/12/15 19:21
字数 1006
阅读 19
收藏 0

Vagrant是一个基于Ruby的工具,用于创建和部署虚拟化开发环境。它使用Oracle的开源VirtualBox虚拟化系统,使用Chef创建自动化虚拟环境. 

下面来初步介绍一下如何使用vagrant以及vagrant有何优势。 

1、Vagrant的安装

由于Vagrant是基于VirtualBox的虚拟化开发环境,自然少不了安装VirtualBox。首先,我们先下载VirtualBox的安装包(Oracle的官网https://www.virtualbox.org/)。然后安装,此处省略100字。。。接下来,我们开始安装Vagrant, Vagrant是一个跨平台工具,请选择自己的当前平台下载(https://www.vagrantup.com/downloads.html)并且安装。 

Vagrant安装完毕,接下来,打开cmder(console),输入以下: 

$ vagrant -h 

这时应该顺利看到vagrant的帮助菜单: 

2、运行Vagrant

在第一步完成之后,我们要让Vagrant运行一个虚拟机。

首先,我们要指定所要运行的虚拟机的版本,通常开发会选择Linux的虚拟机,vagrantbox网站会发布一些常用的虚拟机系统,并且配以名称(http://www.vagrantbox.es/)。

此处,举例安装Centos7.0

// 在我们的vagrant里添加一个名字为myCentos7的虚拟机,下载地址为https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box

$ vagrant box add myCentos7 https://github.com/tommy-muehle/puppet-vagrant-boxes/releases/download/1.1.0/centos-7.0-x86_64.box

// 初始化虚拟机myCentos7

$ vagrant init myCentos7

// 启动虚拟机myCentos7

$ vagrant up

备注:有时候下载较慢,可以先用下载工具下载后,将Url改为本地地址:

$ vagrant box add ubuntu14 C:\Workspace\vmboxes\ubuntu-14.04-x86_64-v2.0-virtualbox.box 


少刻,安装成功,让我们来运行一下:

$ vagrant init ubuntu14

此时我们会发现在当前目录下生成了一个名为“Vagrantfile”的文件,这个文件大有文章,它是我们系统配置文件,我会在第二篇提高篇中详细介绍。

$ vagrant up

稍等片刻,你的ubuntu14虚拟机应该已经运行起来了。 

这时,我们就可以用putty来访问我们的虚拟机了: 

输入:

hostname: 127.0.0.1 port:2222

用户名和密码默认都是vagrant 


其他常用指令:

$ vagrant init      # 初始化

$ vagrant up        # 启动虚拟机

$ vagrant halt      # 关闭虚拟机

$ vagrant reload      # 重启虚拟机

$ vagrant ssh          # SSH 至虚拟机

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

$ vagrant destroy      # 销毁当前虚拟机



3、Vagrant的优势

说到这里,有人觉得无非是用指令安装了一个虚拟机而已,我用virtualbox直接装一个就好了,或者我直接双系统就可以了。那么,现在来说一下vagrant拥有那些好处,设想一下,如果我们能做到开发工作没有任何系统的依赖性,只有代码的异同是什么感受,大家都在同样配置好的环境下开发,一个开发环境可以放入U盘,代码都在管理器里,随时随地都可以开发,那么vagrant就是一个最佳选择:

一个简单开发环境需要服务器容器例如:apache, tomcat等,需要代码编译器:java,php等,还需要数据库mysql, mongo等等,那么对于每个开发人员都要配置一次或者多次环境,那么难免会有些差异,利用vagrant我们可以简单的将所有的配置都在vagrant box中完成并且将vagrant box导出,分发给每个开发人员。在指定的虚拟机和用户桌面共享一个文件夹内,进行项目开发,代码改写,在虚拟机中运行。省去了大量的环境配置时间,再也不会有系统配置问题导致的错误。


下篇 Vagrant提高篇将介绍,利用vagrant搭建php开发环境。



© 著作权归作者所有

techafei
粉丝 0
博文 1
码字总数 1006
作品 0
浦东
私信 提问
Docker与Vagrant之间的特点比较

  以下内容均出自Vagrant作者(Mitchell Hashimoto)与Docker作者(Solomon Hykes)在stackoverflow上面一个问题讨论。在这个问题中,双方阐述了vagrant和docker的特点和使用范围,对于深入理解...

果树啊
2015/06/15
204
0
vagrant故障记--升级虚拟机linux内核导致无法挂载共享文件夹

i'm new to use vagrant,今天升级了下vbox里的ubuntu12.04内核,结果vagrant reload后出现报错。 Failed to mount folders in Linux guest. This is usually because the "vboxsf" file sy......

rooney
2015/03/10
2.4K
1
vagrant 基本命令讲解

https://www.vagrantup.com/, 下载对应系统的软件 安装完毕vagrant 打开命令行, 输入vagrant --help 或者 vagrant -h 查看帮助文档 $ vagrantUsage: vagrant [options] [] -v, --version P...

j5winday
2017/05/16
0
0
Mesos 集群运维--vagrant-mesos

vagrant-mesos 是一款运维工具,可以使 Mesos 集群的安装和运行更加容易。 vagrant-mesos 支持 Mesos 0.21.0 集群,同时包括 Marathon (0.8.0) 和 Chronos (2.1.0)正在运行的框架服务器节点。...

sikkx
2015/06/08
2.5K
0
vagrant+virtualbox使用小记

virtualbox是类似vmware workstation的虚拟机软件,而且是开源的,支持多平台,在win10上也能顺畅运行。win10上安装vagrant能在终端xshell上像linux一样命令行操作,也便于开发环境的切换,很...

hiwill
2018/09/16
125
2

没有更多内容

加载失败,请刷新页面

加载更多

Excption与Error包结构,OOM 你遇到过哪些情况,SOF 你遇到过哪些情况

Throwable 是 Java 中所有错误与异常的超类,Throwable 包含两个子类,Error 与 Exception 。用于指示发生了异常情况。 Java 抛出的 Throwable 可以分成三种类型。 被检查异常(checked Exc...

Garphy
今天
5
0
计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部