49

我必须在其他计算机上拥有相同的 VM,但我不想下载整个盒子、php mysql 等...

我已经按照应有的方式配置了一个盒子,我想在其他计算机上运行这个 VM。

当用户运行“vagrant up”时,机器应该在不下载任何内容的情况下启动。

有人有解决方案吗?

4

2 回答 2

93

最简单的做法是将预先配置的 vagrant box 打包并将 .box 文件传输到另一台机器,添加 box 并运行vagrant up.

所以步骤如下所示:

  1. 打包预配置的框 => vagrant package --base preconfigured_vm --output /path/to/mybox.box请注意,根据文档,--base选项应该是机器的 UUID,或者 VirtualBox 给机器的名称(在打开 VirtualBox 应用程序时找到)。
  2. 使用scp,rsync或其他方式将盒子传输到计算机...(您还可以使用python -m http.server PORT或快速启动 Web 服务器ruby -run -e httpd /path/to -p PORT
  3. 初始化并启动vagrant init preconfigured_vm /path/to/mybox.box
  4. 完毕
于 2013-09-30T13:51:13.843 回答
5

您只需下载一次 VM 盒并进行所需的所有更改和配置,然后将其重新打包到一个名为“myVM.box”的新盒中。

然后您在 Vagrantfile 中注释以下行

#config.vm.box_url = "https://site_of_boxes..."

并使用

config.vm.box = "myVM"

它无需下载任何虚拟机即可启动。

于 2014-01-20T17:21:48.183 回答