Vagrant

✍ dations ◷ 2024-12-22 18:19:19 #自由跨平台软件,用Ruby编程的自由软件

Vagrant是一款用于构建及配置虚拟开发环境的软件,基于Ruby,主要以命令行的方式运行。

主要使用Oracle的开源VirtualBox虚拟化系统,与Chef,Salt,Puppet等环境配置管理软件搭配使用,可以实行快速虚拟开发环境的构建。

早期以VirtualBox为对象,1.1以后的版本中开始对应VMware等虚拟化软件,包括Amazon EC2之类服务器环境的对应。

2010年1月,Vagrant 只是作为Mitchell Hashimoto的业余兴趣而启动的项目。同年3月,Vagrant的第一版本发布了。同年10月,Engine Yard宣布它们将赞助该项目。在原始版本的整整两年后——2012年3月, Vagrant 1.0(首个稳定版本)发布了。同年12月份,Mitchell成立了名为HashiCorp并全职开发Vagrant,但Vagrant仍保留自由软件。HashiCorp现今为Vagrant提供商业插件,并提供专业支持和训练。

初始Vagrant与VirtualBox绑定,但在版本1.1时开始支持其他虚拟化软件,如:VMware、基于内核的虚拟机(KVM)以及作为虚拟专用服务器(如:Amazon EC2)。Vagrant是用Ruby开发的。自版本1.6之后,Vagrant开始支持Docker容器,在一些例子,docker容器可以代替完整的虚拟系统。

Vagrant使用"Provisioners"和"Providers" 作为开发环境的构建模块。

|--vagrant|--Providers        如:VirtualBox、Hyper-V、Docker、VMware、AWS|--Boxex            如:Centos7。与镜像类似|--Provisioners     如:'yum intall -y python' 等自定义自动化脚本

Vagrant作为最外层的虚拟软件,目的是帮助开发者更容易地与Providers交互。Vagrantfile记录Providers和Provisioners的相关信息。

Providers作为服务,帮助vagrant使用Boxes建立和创建虚拟环境。Vagrant提供的内嵌的Provider有 VirtualBox、Hyper-V、Docker、VMware,而AWS以插件形式提供支持。

当使用VirtualBox等Provider,需要使用Boxes才能创建虚拟环境。当使用Docker作为Provider时,则不需要Boxes。

虚拟环境被创建后,开发者可以使用Provisioners自动化地自定义该虚拟环境。在Vagrant ecosystem 中(Ansible在2014已经可用了),Puppet和Chef是最常用的 Provisioners。

相关

  • 血管紧张素转化酶抑制剂血管紧张肽I转化酶抑制剂(英语:ACE inhibitor,简称为ACEI)是一类抗高血压药。血管紧张素转化酶(ACE)是肾素-血管紧张素-醛固酮(RAA)系统中的一个重要环节,该系统对血压的调节有着及其
  • 德国驻日大使馆德国驻日大使馆(德语:Deutsche Botschaft Tokyo、日语:駐日ドイツ大使館),是德意志联邦共和国对日本国设置的外交代表机构,亦为德国规模最大的驻外使馆之一,馆址位于东京港区的南麻
  • 形式证明数学上,一个公理系统(英语:Axiomatic system,或称公理化系统,公理体系,公理化体系)是一个公理的集合,从中一些或全部公理可以一并用来逻辑地导出定理。一个数学理论由一个公理系统和
  • 盐碱地盐碱地指的是那些盐分含量高,pH大于9,难以生长植物尤其是农作物的土壤。根据所含盐分和碱份的多少,还可进一步分为轻度(0.1%~0.25%)、中度(0.25%~0.5%)、重度盐碱地(0.5%~0.6%)。盐碱地
  • 新罕布什尔坐标:43°11′38″N 71°34′21″W / 43.1938516°N 71.5723953°W / 43.1938516; -71.5723953新罕布什尔州(英语:State of New Hampshire),是位于美国东北部新英格兰地区的一个
  • 淋巴腺鼠疫腺鼠疫,又称淋巴腺鼠疫,是三种鼠疫之一,是由鼠疫杆菌(Yersinia pestis)所致的传染病。鼠疫通常先在鼠类或其他啮齿类动物中流行,然后再通过鼠、跳蚤叮咬传给人;当发展成肺炎性鼠疫
  • 低聚糖寡糖又称低聚糖,为普遍由3-10个单糖分子聚合而成的碳水化合物。寡糖普遍存在于动物细胞的细胞膜,并有着辨别其他细胞的功能。根据营养专家及许多医学研究,寡糖有类似水溶性膳食
  • 四大四大可以指:
  • 光致光致发光(Photoluminescence,简称PL)是冷发光的一种,指物质吸收光子(或电磁波)后重新辐射出光子(或电磁波)的过程。从量子力学理论上,这一过程可以描述为物质吸收光子跃迁到较高能级
  • 木耳属木耳属(学名:Auricularia)是木耳科食用菌一个属,又名.mw-parser-output ruby.zy{text-align:justify;text-justify:none}.mw-parser-output ruby.zy>rp{user-select:none}.mw-pa