我克隆了一个包含Vagrantfile,需求文件和其他一些东西的repo。我非常喜欢VM,想要将它重新用于各种项目,所有项目都有自己的回购。在重新克隆之后,我没有配置每个新的repo的来源并删除多余的文件,而是考虑我可以复制VM并重新使用它。所以我pieced together的基本工作流程就是这样:
$ git clone https://github.com/.../x.git Template
$ cd Template
$ vagrant up
$ VBoxManage list vms
$ vagrant package --base Template_default_1394051969748_83660 --output ./template.box
$ vagrant box add template template.box virtualbox
现在我可以为项目创建一个新目录,运行vagrant init
,然后编辑Vagrantfile以使用模板框。
我的问题只是那些在Vagrant中经验丰富的人是否认为我可能会让这个太过刻板或者某种方式错过了Vagrant。
答案 0 :(得分:0)
答案取决于您对基本框所做的修改,提供修改所需的时间,进行修改的复杂性以及修改后的框的用户可以等待每个修改的时间。 “流浪汉 - 提供”请求。
如果您的修改很简单并且在几秒钟内完成(例如,您的配方运行列表仅限于安装一些小型公共应用程序),则无需创建新的修改后的基本框。如果您的更改很复杂,耗时,并且可能需要身份验证凭据,那么您可能通过预先配置修改后的基本框来提供价值。
您所做出的选择可能会有不同,从Vagrantfile到Vagrantfile。
为了遵守这一原则,您可以使用包装器规范声明已修改的衍生基本框的配置。理想情况下,如果用户无法访问您的个人知识,则不会为用户留下无法重新创建的虚拟机。使用打包器定制基本框图像,创建修改后的框,并提交打包程序规范,Vagrantfile和主厨(或类似)配置脚本以更改管理。