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)

Vagrant (3) —— 复制/备份Vagrant Box的更多相关文章

  1. [转帖]vagrant 添加带版本号的 box

    vagrant 添加带版本号的 box https://www.jianshu.com/p/12cf1ecb224b 第三种好用 lnmpcomposerphp  阅读约 8 分钟 前言 众所周知,v ...

  2. 【Vagrant】-NO.130.Vagrant.2 -【Error:the filesystem "vboxsf" is not available】

    Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...

  3. 【Vagrant】-NO.130.Vagrant.1 -【Vagrant】

    Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...

  4. linux 通过scp 复制备份恢复mysql数据表

    最近客户有个需求,小弟对于运维的东西也是半瓶醋,所以就果断的摸索了下.折磨了一个晚上终于算是搞定了.因为是两个不同的服务器,本来想用ftp,无奈小弟不是很熟悉,所以就用了scp,但是scp有个问题就是 ...

  5. 如何配置MYSQL的MASTER---SLAVE复制备份?

    如何配置MYSQL的MASTER---SLAVE复制备份? 一.配置一个mysql服务器做master:     在配置文件my.ini中添加如下内容: log-bin=matster-binlog- ...

  6. Vagrant 手册之 Vagrantfile - Vagrant 设置 config.vagrant

    原文地址 配置的命名空间:config.vagrant config.vagrant 中的设置修改 Vagrant 自身的行为. 1. 可用设置 config.vagrant.host 设置运行 Va ...

  7. vagrant 添加带版本号的 box

    众所周知,vagrant添加box的时候要从外网下载,那速度...(说多了都是泪),所以只好用下载工具下载到本地之后再添加. 如何搭建 homestead:https://laravelacademy ...

  8. 【vagrant】第一次安装添加box报错:The box failed to unpackage properly....

    报错信息 The box failed to unpackage properly. Please verify that the box file you're trying to add is n ...

  9. vagrant系列三:vagrant搭建的php7环境

    原文:https://blog.csdn.net/hel12he/article/details/51107236 前面已经把vagrant的基础知识已经基本过了一遍 了,相信只要按着教程来,你已经搭 ...

随机推荐

  1. Java原理之HashMap

    一下JDK1.7测试没问题,1.8就不一样了,应该散列的更优化. 最近看了很多java底层之HashMap的原理,根据自己的实现如下: package com.gmq.chapter02; impor ...

  2. python os.chdir() 用法

    概述 os.chdir() 方法用于改变当前工作目录到指定的路径. 语法 chdir()方法语法格式如下: os.chdir(path) 参数 path -- 要切换到的新路径. 返回值 如果允许访问 ...

  3. 转: FFmpeg功能命令汇总

    原文: FFmpeg功能命令汇总 前言 如此强大的FFmpeg,能够实现视频采集.视频格式转化.视频截图.视频添加水印.视频切片.视频录制.视频推流.更改音视频参数功能等.通过终端命令如何实现这些功能 ...

  4. C#基础第八天-作业答案-设计类-面向对象方式实现两个帐户之间转账

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  5. Yii2 使用 faker 生成假数据(转)

    测试过程中有时候需要生成大量的假数据,faker 是一个生成假数据的类库,可以生成姓名,电话,IP地址,密码,ISBN等等你能想到的或者你想不到的各种类型的假数据. Yii2.0已经集成该类库,不用再 ...

  6. java中比较两个double类型值的大小

    非整型数,运算由于精度问题,可能会有误差,建议使用BigDecimal类型,具体 BigDecimal的详细说明参考jdk开发帮助文档. import java.math.BigDecimal; pu ...

  7. AliSQL 5.6.32 vs MySQL 5.7.15抢鲜测试

    摘要:    今天我们有幸抢鲜测试AliSQL,直接拿来和MySQL 5.7.15对比看看. AliSQL刚宣布开源,我就提交申请内测名额,节前收到开放内测邀请,于是第一时间进行了测试了解,希望能给大 ...

  8. DOUHAO

    https://www.java-forums.org/new-java/42610-java-regular-expressions-comma-seperated-list.html https: ...

  9. DCOS :私有云的物理基础架构管理引擎

    https://cloud.tencent.com/developer/article/1005598 一.引言 云计算经过多年的发展,逐渐从概念到渐为人认知.到接受.到现在全行业拥抱上云,云的客户也 ...

  10. linux命令(39):shell 打印偶数行,奇数行 ,行号

    awk 命令: 1. 打印行号和内容: awk '{print NR":"$0}' 2. 输出:偶数行和奇数行到文件 awk '{print $0.txt > NR%2.tx ...