您的位置:首页 > 其它

Vagrant (3) —— 复制/备份Vagrant Box

2016-01-26 14:13 357 查看

Vagrant (3) —— 复制/备份Vagrant Box

摘要

介绍复制/备份Vagrant Box基本方法

版本

Vagrant版本: 1.8.1

内容

复制vagrant box并压缩

关闭正在运行的Vagrant

vagrant halt

在相同路径下,创建一个 package.box 文件

vagrant package

这样就完成了。

如果要指定vm或者输出名称等内容请查看

vagrant package -h

⇒  vagrant package -h
Usage: vagrant package [options] [name]

Options:

--base NAME                  Name of a VM in virtualbox to package as a base box
--output NAME                Name of the file to output
--include FILE...            Additional files to package with the box
--vagrantfile FILE           Vagrantfile to package with the box
-h, --help                       Print this help

package.box 这个文件是当前vagrant vm的全镜像,且经过压缩。

创建一个新的vm(快速方法)

为新的vagrant创建一个目录,然后初始化一个新的Vagrantfile

vagrant init

打开文件Vagrantfile,编辑文件,将当前默认的box名字改为新的box名称,比如“my-backup-test-box”

config.vm.box = "my-backup-test-box"

启用注释掉的关于box位置的配置

# config.vm.box_url = "http://domain.com/path/to/above.box"

以上的路径为box的文件路径,windows用户需要配置成

config.vm.box_url = "file:///d:/folder/package.box"

将默认的IP配置修改,推荐用本机的ip地址,最后+1

config.vm.network :private_network, ip: "192.168.33.101"

重新运行Vagrant

vagrant up

创建新的vm(完整方法)

如果希望将box加入到vagrant box列表中,通过名称而非文件路径来使用,可以这样:

vagrant package

将box加入到Virtualbox(选择名字name-of-this-box)

vagrant box add --name name-of-this-box package.box virtualbox

注意以上命令行参数--name

⇒  vagrant box add --name name-of-this-box package.box
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'name-of-this-box' (v0) for provider:
box: Unpacking necessary files from: file:///Users/Richard/Documents/Dev/vagrant/package.box
==> box: Successfully added box 'name-of-this-box' (v0) for 'virtualbox'!

现在我们可以通过名称来创建一个vm

config.vm.box = "name-of-my-box"

此种方法不需要再配置config.vm.box_url

需要注意 synced folder

在打包box并且创建新的vm时,客户(guest)下的synced folder的内容可能会丢失,所以最好在此之前关闭synced

config.vm.synced_folder ".", "/vagrant", disabled: true


没有亲测



参考

How to copy Vagrant boxes (or duplicate them)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: