Vagrant (3) —— 复制/备份Vagrant Box
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的更多相关文章
- [转帖]vagrant 添加带版本号的 box
vagrant 添加带版本号的 box https://www.jianshu.com/p/12cf1ecb224b 第三种好用 lnmpcomposerphp 阅读约 8 分钟 前言 众所周知,v ...
- 【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 ...
- 【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 ...
- linux 通过scp 复制备份恢复mysql数据表
最近客户有个需求,小弟对于运维的东西也是半瓶醋,所以就果断的摸索了下.折磨了一个晚上终于算是搞定了.因为是两个不同的服务器,本来想用ftp,无奈小弟不是很熟悉,所以就用了scp,但是scp有个问题就是 ...
- 如何配置MYSQL的MASTER---SLAVE复制备份?
如何配置MYSQL的MASTER---SLAVE复制备份? 一.配置一个mysql服务器做master: 在配置文件my.ini中添加如下内容: log-bin=matster-binlog- ...
- Vagrant 手册之 Vagrantfile - Vagrant 设置 config.vagrant
原文地址 配置的命名空间:config.vagrant config.vagrant 中的设置修改 Vagrant 自身的行为. 1. 可用设置 config.vagrant.host 设置运行 Va ...
- vagrant 添加带版本号的 box
众所周知,vagrant添加box的时候要从外网下载,那速度...(说多了都是泪),所以只好用下载工具下载到本地之后再添加. 如何搭建 homestead:https://laravelacademy ...
- 【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 ...
- vagrant系列三:vagrant搭建的php7环境
原文:https://blog.csdn.net/hel12he/article/details/51107236 前面已经把vagrant的基础知识已经基本过了一遍 了,相信只要按着教程来,你已经搭 ...
随机推荐
- js获取日期:昨天今天和明天、后天
<html> <head> <meta http-equiv="Content-Type" content="textml; charset ...
- Redis介绍及安装
官网:https://redis.io/ Redis中文社区:http://www.redis.net.cn/ Redis教程:http://www.redis.net.cn/tutorial/350 ...
- pycharm + selenium + python 提示 Unresolved reference 'webdriver' 解决办法
尝试使用python + selenium + pycharm 做自动化测试, 命令行pip install selenium 安装了selenium.但是使用pycharm 新建一个测试项目后并新建 ...
- Android app启动activity并调用onCreate()方法时都默默地干了什么?
Android app启动activity并调用onCreate() 方法时都默默地干了什么? 在AndroidManifest.xml文件中的<intent-filter>元素中有这 ...
- 基础003_V7-Memory Resources
一.综述 参考ug473.pdf. 常用Memory 资源: 在IP核中,Block memory(distributed memory为CLB中的资源): 通常选用Native,而不用AXI接口: ...
- 在c和c++中的求绝对值
在c语言中,根据类型的不同,求绝对值函数也不同. int abs(int x) double fabs(double x) 求int类型用abs,求浮点类型用fabs. 而且这两个函数的所在头文件也不 ...
- Python无限元素列表实例教程
有关Python中无限元素列表的实现方法. 本文实例讲述了Python怎么实现无限元素列表的方法,具体实现可使用Yield来完成.下面所述的2段实例代码通过Python Yield 生成器实现了简单的 ...
- ASP.NET CORE做的网站运行在docker上(不用dockerfile文件部署)
按网上的做法用dockerfile文件是可以弄得出来的,http://www.docker.org.cn/article/119.html, 不过我想把网站文件放在外面硬盘目录,再映射进去,这样只要在 ...
- 【Unity】第6章 Unity脚本开发基础
分类:Unity.C#.VS2015 创建日期:2016-04-16 一.简介 游戏吸引人的地方在于它的可交互性.如果游戏没有交互,场景做得再美观和精致,也难以称其为游戏. 在Unity中,游戏交互通 ...
- hdu1542 Atlantis (线段树+扫描线+离散化)
Atlantis Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...