Kim*_*cks 42 packaging virtualbox virtual-machine vagrant
我安装了一个VirtualBox,然后在其中安装了Ubuntu 12.10 Server Base OS.我已经安装了各种php包和其他包.我的朋友们建议我使用Vagrant,这样我就可以轻松地与队友分享我的设置.
因为我当前的VirtualBox VM不是使用创建的vagrant up,所以我不知道如何打包它.Vagrant 的文件谈到了包装,但首先说:
在完成本页的其余部分之前,请确保通过运行vagrant来构建虚拟环境.
在我的情况下,我最初使用vagrant up创建了我现有的VM.
如何打包现有VM?
kyn*_*nan 25
要实现的重要事项(以及流浪文档并不过分清楚)是包装有两种"味道":
vagrant up,而您没有.这允许您打包对流浪者基本框进行的任何自定义.有一个使用Oracle Enterprise Linux 从头开始创建流浪盒的详细指南,这可能会有所帮助.你也可以试试VeeWee.
或者,您可以从Ubuntu 12.10基本框开始并移植自定义,在这种情况下,您可以使用更简单的第一种打包方式.
以上是指Vagrant 1.0.事情在1.1中略有改变,特别是文档已被重写:
vagrant package 命令允许您以与1.0中相同的方式将对现有流浪者基本框进行的任何自定义打包.metadata.json文件,因为Vagrant 1.1支持多个提供程序.vagrant package --output box_name.box --base"vm machine name"--vagrantfile Vagrantfile
确保正确设置端口转发和SSH密钥.
这可能是一个很好的例子:https://github.com/okfn/ckan/wiki/How-to-Create-a-CentOS-Vagrant-Base-Box
任何VirtualBox都可以打包到Vagrant Base Boxes(基本上是带有a的OVA Vagrantfile).
问题是:虚拟机不是按照流浪者基础盒构建的,如果你不在vagrantbox.es上共享它那么它就没事了.
只需安装vagrant(通过gem或安装程序),在VM文件夹中运行以下命令将其打包到.box
注意:对于Vagrant 1.2.x,建议的安装方法是使用特定于操作系统的软件包.Ruby Gem不适用于1.2.x.
vagrant package --base ubuntu --output /path/to/ubuntu.box
请记住,如果您想与其他人共享流浪汉基本框,请更好地阅读文档并遵循这些规则以使其他人更容易.
While not a complete answer, I think you can get what you need from the documentation, which is quite extensive. I believe that vagrant up is merely a convenient means to setting up a Vagrant "box". There are a number of requirements for a box to be Vagrant compliant. They are described here...
Documentation: Vagrant - Base Boxes
The bare bones needed for a box are as follows...
Once a box is compliant with these requirements, it should simply be a matter of using the vagrant package command to create a portable installation...
More documentation: Vagrant - Boxes
所以,虽然我没有一个完整的答案,我从来没有这样做过,但我认为有可能让您的安装进入允许您打包和分发它的状态。
| 归档时间: |
|
| 查看次数: |
42075 次 |
| 最近记录: |