Vagrant 是否可以在一个文件中导出/导入虚拟机?

Vagrant 是否可以在一个文件中导出/导入虚拟机?,vagrant,virtual-machine,virtualbox,Vagrant,Virtual Machine,Virtualbox,我有一个流浪汉设置了3个虚拟机。每台机器都有自己的用于资源调配的shell脚本 现在我想与其他人分享我的设置的完全相同的状态。由于每台机器的资源调配过程都非常(!!)长,因此我希望有另一种解决方案 理想情况下,我可以将每台机器保存在一个文件中,然后其他人可以将其导入Virtualbox。有没有办法做到这一点?如果我理解正确,您希望使用由Vagrant VM提供的资源制作一个Vagrant base box。这不是推荐的方法。您可以采取的方法是: 在VBox中使用所需的操作系统手动创建新VM 对其

我有一个流浪汉设置了3个虚拟机。每台机器都有自己的用于资源调配的shell脚本

现在我想与其他人分享我的设置的完全相同的状态。由于每台机器的资源调配过程都非常(!!)长,因此我希望有另一种解决方案


理想情况下,我可以将每台机器保存在一个文件中,然后其他人可以将其导入Virtualbox。有没有办法做到这一点?

如果我理解正确,您希望使用由Vagrant VM提供的资源制作一个Vagrant base box。这不是推荐的方法。您可以采取的方法是:

  • 在VBox中使用所需的操作系统手动创建新VM
  • 对其进行调整,使Vagrant可以按照所述和连接到它
  • 使用shell脚本设置它
  • 在这个虚拟机上安装所有有用的东西
  • 如前所述,使用Vagrant将其包装为基本盒
  • 使用Vagrant打包后,您将得到一个扩展名为.box的Vagrant基本框文件。然后,您可以将其传递给您的队友(usb、网络共享、ftp等),他们可以将其添加到他们的Vagrant安装中并使用它。无论何时,他们将做流浪起来,他们将得到完全配置的虚拟机在VBox与所有的东西,你已经打包到它。Vagrant还提供了版本控制功能。如果您在创建新版本的base box时进行了正确配置,则将通知使用它的所有人,并可以下载和使用新版本的box。
    希望我正确理解了你的问题,这将有助于解决它

    是的,我想共享我使用vagrant&shell provisioning创建的虚拟机,而不需要另一方执行资源调配部分。因此,如果我将这些机器导出为基本框,它们是否包括机器的完整状态(包括我执行的资源调配)?第二个问题——为什么不推荐?我从共享开发过程的角度理解,但它还有其他缺点吗?当你打包一个基本框时,它将包含当前的VM状态。因此,如果您准备好所有需要的东西,保存状态,然后打包VM,那么所有这些都将打包到盒子中。我也在学习“流浪者”,我在他们的网站上看到“基本盒子通常不是通过重新包装现有的流浪者环境制作的”。我想我确实误解为“一般”并不是“不推荐”的意思!因此,当我现在想到它时,在调用
    vagrant up
    之后,实际上在VBox中得到了功能齐全的VM。为什么不在整个资源调配之后将其打包为基本箱?我想你应该试一试!!我还发现这可能对你有帮助。看起来尼古拉斯正在做你想做的事情。祝你好运很好的链接。非常感谢。这正是我一直在寻找的:)