【问题标题】:Is it possible for Vagrant to use an OS .ISO install image directly/or create a Vagrant box from an ISO on the fly?Vagrant 是否可以直接使用 OS .ISO 安装映像/或从 ISO 动态创建 Vagrant 框?
【发布时间】:2013-03-06 09:26:30
【问题描述】:

是否可以从原始 ISO 为操作系统安装自动创建 Vagrant .box 文件?

对我来说,这是 Vagrant 提供的虚拟机上操作系统安装和配置的端到端自动化方面的一个重大差距。

当然,VagrantBox.es 提供了许多基本的 .box 操作系统安装文件供使用。但有些来自第三方供应商,而不是来自原始操作系统分发制造商。例如 Arch Linux:Arch Linux 64 (2012-07-02)http://vagrant.pouss.in/archlinux_2012-07-02.box

不想对第三方供应商的努力持否定态度,但一些组织可能想要来自原始操作系统提供商的原始安装映像(例如,对于上面的 Arch 示例,这将是:https://www.archlinux.org/download/)。想要原始安装映像的原因是安全性(因为无法验证第三方映像是否存在安全隐患和恶意软件),并且可以按照原始供应商的预期获取映像,而无需额外的东西。另一个原因是利用原始供应商直接发布的新版本,而不必等待第三方将其作为 Vagrant .box 发布

有从 .ISO 映像创建 .box 文件的指南:

但这些都是手动步骤 - 这与 Vagrant 背后的自动化和一致性理念背道而驰。特别是如果许多人想要实现能够使用原版的最终目标 - 这最终会导致每个人都重复努力。

因此,我将从一个明确的答案中寻找这里,该答案描述了如何制作通用自动化脚本以将 .ISO OS 安装映像转换为 Vagrant 框。

【问题讨论】:

  • 我在practicalweb 上写了这篇文章,这主要是一个学习练习,可以准确地理解base box 中的内容。 Veewee 听起来像你想要的
  • +1 谢谢肖恩。我很欣赏你的方法,当然认为这是最好的学习方式,也值得与他人分享。

标签: automation operating-system installation vagrant


【解决方案1】:

我认为 VeeWee 为从 ISO 准备 Vagrant 盒子提供了一个很好的机制:

https://github.com/jedi4ever/veewee

它已经为大多数发行版提供了许多开箱即用的模板,您可以根据需要对其进行自定义(尽管通常不需要)。或者,您可以创建自己的定义。

您也可以使用 Packer:

https://packer.io/

它是由制作 Vagrant 的同一家公司生产的,因此它具有相当好的集成度。我相信 Packer 本身不提供示例模板,但如果您愿意,您可以使用 Puppet Labs 用于自己的测试目的的模板:

https://github.com/puppetlabs/puppetlabs-packer

这可以用作您自己的模板的坚实基础并根据需要进行修改,或者如果需要,您可以提出项目的 PR 以回馈。

【讨论】:

  • +1 @Ken Barber 谢谢这看起来像我正在寻找的东西。我会检查一下,并让问题悬而未决,让其他人有机会做出贡献。
  • 实际上我会接受这一点,因为我认为这对我想做的事情来说是正确的。当然,作者可能会继续增强它,或者实际上其他人可能会。但不想让你等待接受。谢谢。
  • 在搜索中找到对 VeeWee 的引用加快了我接受的倾向。这里有一个指南:spilth.org/blog/2013/01/21/… 大量其他搜索结果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-22
  • 2017-07-12
相关资源
最近更新 更多