0.说明

本门所有的操作都是基于mac。windows可做相应调整,大体流程是一样的。

1.什么是vagrant

通俗来讲vagrant是一个通过命令行,来管理虚拟机的工具,vagrant本身并没有提供虚拟化的功能,vagrant可以用来管理vistualbox,可以通过vagrant提供的命令来创建,启动和关闭vistualbox里面的虚拟机。

2.为什么要使用vagrant

vagrant提供一个配置文件Vagrantfile,可以通过该配置文件快速创建或者复制一个虚拟机,同时使用命令行来管理虚拟机非常简单。

3.安装vagrant和vistualbox

vistualbox 官网下载:https://www.virtualbox.org/wiki/Download_Old_Builds_5_1

vagrant官网下载:https://www.vagrantup.com/downloads.html

可以选择合适的平台和版本下载。具体的安装不在这里说明。

4.vagrant box

vagrant box 是 vagrant定义的vagrant镜像,vagrant通过box镜像可以在vistualbox里面快速创建一个虚拟机,vagrant box 里面包含相应的操作系统。vagrant官方box地址:

https://app.vagrantup.com/boxes/search



可以在创建虚拟机的时候指定box,该box可以是官方仓库里面的,也可以将box提前下载到本地,在创建的时候指定路径。

5.vagrant快速创建虚拟机

假设我们创建一个centos7的虚拟机,现在现在系统中创建一个centos7demo的文件夹(该文件夹的名字可以随意),然后在命令行中进入该目录。创建一个Vagrantfile文件(这个名字必须是这样的),在文件中写上以下内容

Vagrant.configure("2") do |config|
config.vm.box = "/Users/niele/boxes/CentOS-7.box"
#config.vm.box = "centos/7"
end

此处指定了box镜像为centos/7,创建虚拟机的时候,先去vagrant box仓库先把centos/7这个镜像下载下来。再根据该box镜像快速的创建一个centos7的虚拟机。也可以在此处指定一个本地路径,创建虚拟机的时候直接读取指定路径下的box。

然后在centos7demo目录下执行如下命令:

(1)vagrant添加box到本地镜像仓库。

vagrant box add centos/7 # 去vagrant网上官方仓库下载box 添加到本地镜像仓库
vagrant box add my_first_box D:/centos-7.0-x86_64.box #或者将提前下载下来的box加到vagrant本地镜像仓库里面。

远程下载box界面如下:



可以通过如下命令查看本地镜像

vagrant box list

(2)创建并运行虚拟机

vagrant box up

启动完成后vmbox里面创建并运行一个centos7demo的虚拟机

6.vagrant 登录到虚拟机

在centos7demo目录下直接通过如下命令登录到创建的虚拟机:

vagrant ssh



可以发现已经连接到虚拟机。

7.总结

本文只是简单的介绍vagrant相关知识和入门操作,后面还会讲解怎么通过vagrant开启一个集群,通过vagrant开启一个集群只需一条命令,对于搭建集群环境非常便利。

vagrant 入门的更多相关文章

  1. Vagrant入门

    简单地说,Vagrant让我们可以通过代码的方式快速地.可重复地创建针对不同虚拟环境的虚拟机,包括Virtualbox.AWS.Docker等.它使得我们可以一次性地.自动创建多个环境相同的虚拟机,对 ...

  2. [转] Vagrant入门

    [From] https://www.cnblogs.com/davenkin/p/vagrant-virtualbox.html 简单地说,Vagrant让我们可以通过代码的方式快速地.可重复地创建 ...

  3. Vagrant入门二(转)

    原文:https://github.com/zhjchina/Go-best-practice/edit/master/ebook/zh/01.3.md 3 Vgrant使用入门 前面我们已经学会了如 ...

  4. Vagrant入门一(转)

    原文: https://github.com/astaxie/Go-best-practice/blob/master/ebook/zh/01.2.md 1.2 Vagrant安装配置 实际上Vagr ...

  5. Vagrant 入门 - 配置

    原文地址 现在我们已经有了一个运行 Ubuntu 的虚拟机,并且可以在宿主机上编辑文件并自动同步到虚拟机.现在让我们安装一个 web 服务器,通过服务器访问这些文件. 可以通过 SSH 进入并安装一个 ...

  6. Vagrant 入门 - box

    原文地址 Vagrant 使用基础镜像来快速克隆虚拟机,而不是从头开始构建虚拟机.这些基础镜像在 Vagrant 中被称为"box",并且指定用于 Vagrant 环境的 box ...

  7. Vagrant入门[转]

    Vagrant是一个简单易用的部署工具,用英文说应该是orchestration tool.它能帮助开发人员迅速的构建一个开发环境,帮助测试人员构建测试环境. Vagrant的基本工作原理大致如下: ...

  8. vagrant 入门3

    创建第一个Vagrant虚拟环境以及工程(续集): (8) Provisioning: 通常情况下Box只做最基本的设置,而不是一次到位的设置好所有的环境.Vagrant通常使用chef或者Puppe ...

  9. vagrant 入门4

    7. 打包 Packaging , 8080 end 2. 打包Project $ vagrant package --vagrantfile Vagrantfile.pkg 8. 打包完成后,在工程 ...

随机推荐

  1. Python基础(11)——反射、异常处理

    1.反射 以下均是对对象的操作,而不是对类 class Foo(object): def __init__(self): self.name = 'wupeiqi' def func(self): r ...

  2. JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果

    JS仿QQ空间鼠标停在长图片时候图片自动上下滚动效果 今天是2014年第一篇博客是关于类似于我们的qq空间长图片展示效果,因为一张很长的图片不可能全部把他展示出来,所以外层用了一个容器给他一个高度,超 ...

  3. array_multisort函数,以及多维数组下排序的应用,并与usort函数对比

    以前比较少用这个函数,大部分自己接触的业务里,处理稍微大一些的数组的时候几乎都是从db里取出来的,在db里就order by了. 最近倒是用了次,这个函数用来排序很强大,有点类似于sql中的order ...

  4. OC实现个人中心页面

    AppDelegate.m: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDic ...

  5. 注冊成为Windows Phone开发人员而且解锁Windows Phone 8.1手机

    注冊成为Windows Phone开发人员而且解锁Windows Phone 8.1手机 上篇文章介绍了怎样使用Qt Creator和Visual Studio构建Windows Phone 8.1应 ...

  6. Scala--文件和正则表达式

    一.读取行 import scala.io.Source val source = Source.fromFile("D:\\documents\\Scala\\MyDemo\\t.txt& ...

  7. 蜻蜓fm面试

    一面: 面试官首先看简历上写了在腾讯的实习,然后就探讨了半天,各种虚拟化的技术.... 说完之后,估计都半小时过去了,然后就又说了一下你用什么语言,你做的东西都比较偏底层呢,然后你对工作有什么要求吗? ...

  8. 【LeeCode23】Merge k Sorted Lists★★★

    1.题目描述: 2.解题思路: 题意:将K个已经排序的链表合并成一个排序的链表,分析并描述所用算法的复杂度. 方法一:基于“二分”思想的归并排序.本文用非递归和递归两种方法实现. (1)非递归:归并排 ...

  9. activiti发布APP时报错:关联的流程无效

    解决办法: 1.检查流程命名和任务命名以及其他命名中是否有特殊字符,有一些字符是不支持的.(中文是可以的,中文标点符号可能不行,我的经验是顿号会报错) 2.检查流程图,把鼠标放到每一根连接线上,观察它 ...

  10. 汇编  cdecl 函数调用约定,stdcall 函数调用约定

    知识点:  cdecl 函数调用约定  stdcall 函数调用约定  CALL堆栈平衡 配置属性--> c/c++ -->高级-->调用约定 一.cdecl调用约定 VC++ ...