Vagrant 手册之 box - 版本
从 Vagrant 1.5 版本起,box 开始支持版本。这运行创建 box 的人提交更新,使用 box 的人检查更新、更新 box 并查看变更记录。
对于 Vagrant 新手,box 版本并不重要,建议先去学习其他知识点。但是如果你在团队中使用 Vagrant 并且计划创建自己的 box,版本非常重要。幸运的是,Vagrant 内置版本控制功能易于使用,并很好地适应 Vagrant 工作流程。
本章讲解如何使用带版本的 box。如果想了解如何创建带版本的 box,请参考 创建基础 box。
1. 查看版本并更新
vagrant box list
只显示 box 的安装版本。如果查看 box 的可用版本,需要在 HashiCorp’s Vagrant Cloud 上查找 box。可用直接通过 URL https://vagrantcloud.com/$USER/$BOX
查找 box。例如,对于 hashicorp/precise64
这个 box,可用在 https://vagrantcloud.com/hashicorp/precise64
获取信息。
可用通过 vagrant box outdated
命令检查 box 是否已经过时。这可以检查当前 Vagrant 环境中的 box 是否过时以及系统上安装的任何其他 box。
可用通过 vagrant box update
命令更新 box。这会下载并安装新 box。这不会更新运行中的 Vagrant 环境。如果 Vagrant 环境已经在运行,必须销毁并重新创建它才能获取 box 中的更新,update 命令只是在本地下载这些更新。
2. 版本约束
可以通过在 Vagrantfile 中指定 config.vm.box_version
选项,限制 Vagrant 环境使用特定的一个或多个版本的 box。
如果未指定此选项,则相当于指定“>=0”的约束,始终使用最新版本。
box 版本配置可以是特定版本或几个版本。约束可以是以下任意组合:=X
,>X
,<X
,>=X
,<=X
,~> X
。可以通过用逗号分隔多个约束来组合多个约束。所有的约束条件应该是自我解释的,除了 ~>
,称为“悲观约束”。例如:~> 1.0
相当于 > = 1.0
,< 2.0
。~> 1.1.5
相当于 > = 1.1.5,<1.2.0
。
可以选择合适的版本处理方式。但是,公共目录中的许多 box 都遵循 语义版本控制。基本上,只有第一个数字(“主要版本”)打破向后兼容性。就 Vagrant box 而言,这意味着任何运行在 box “1.1.5”版本中的软件都应该在“1.2”和“1.4.5”中工作,但是“2.0”可能会引起重大变化。按照这个约定,最好的约束是 ~> 1.0
,因为无论该版本在哪个范围内,都知道它是安全的。
注意,虽然 语义版本控制 规范允许超过三个点,并且支持 pre-release 及 beta 版本,但 Vagrant 框必须是 X.Y.Z
格式,其中 X,Y 和 Z 都是正整数。
3. 自动更新检查
使用 Vagrantfile,还可以配置 Vagrant 在任何 vagrant up
期间自动检查更新。这是默认启用的,但可以在 Vagrantfile 中通过 config.vm.box_check_update=false
轻松禁用。
启用此功能后,Vagrant 将在每次 vagrant 启动时检查更新情况,不在从头开始创建机器是检查,还在恢复运行时以及重启时检查更新。
如果发现更新,Vagrant 会向用户发出警告,让他们知道有更新可用。用户可以选择忽略该警告,或者可以通过运行 vagrant box update
来更新该 box。
Vagrant 不能也不会自动下载更新的机器并更新机器,因为机器可能相对较大,更新机器需要销毁机器并重新创建机器,这会导致重要数据丢失。因此,此过程是手动的,用户必须手动输入命令才能执行此操作。
4. 修剪旧版本
Vagrant 不会自动修剪旧版本,因为无法确认其是否可能被其他 Vagrant 环境使用。因为 box 可能很大,所以可能需要一段时间后通过使用 vagrant box remove
主动修剪它们。可以通过 vagrant box list
查看所有安装的 box。
另一种选择是使用 vagrant box prune
命令删除所有已经过期并且当前未使用的已安装 box。
Vagrant 手册之 box - 版本的更多相关文章
- Vagrant 手册之 box - box 的文件格式
原文地址 过去,box 只是 VirtualBox 导出的 tar 文件.由于 Vagrant 现在支持多个 provider 和版本控制,box 文件稍微复杂一些. 用于 Vagrant 1.0.x ...
- Vagrant 手册之 box - 创建基础 box
原文地址 有一种特殊的 box 被称为"base box".这些 box 包含 Vagrant 运作所需的最低限度,通常不是对现有的 Vagrant 环境("base b ...
- Vagrant 手册之 box - 概述
原文地址 box 是 Vagrant 环境中使用的包格式.box 可以在 Vagrant 支持的所有平台上被任何人使用,从而提供相同的工作环境. vagrant box 工具提供了管理 box 的所有 ...
- Vagrant 手册之 box - box 的信息格式
原文地址 创建 Vagrant 的 box 时,可以提供在运行 vagrant box list -i 时展示的与用户相关的其他信息.例如,可以打包 box,以包含有关该 box 的作者和网站信息: ...
- Vagrant 手册之 Vagrantfile - 配置版本
原文地址 配置版本是 Vagrant 1.1+(引入了大量新功能和配置选项) 能够与 Vagrant 1.0.x Vagrantfiles 保持向后兼容的机制. 现在运行 vagrant init 时 ...
- Vagrant 手册之 Vagrantfile - 机器设置 config.vm
原文地址 配置的命名空间:config.vm config.vm 中的设置修改 Vagrant 管理的机器的配置. 1. 可用的设置项 config.vm.boot_timeout Vagrant 等 ...
- Gpload安装手册(Linux版本)
Gpload安装手册(Linux版本) 一.python 2.7版本 Linux系统默认是安装python2.7的,如果没有需要手动安装(python版本要求2.4.4以上): 通过命令:python ...
- Vagrant 无法校验手动下载的 Homestead Box 版本
起因 4年前电脑,配置不太好了,现有的 Homestead 运行起来太吃内存.在修改了 Homestead.yaml 文件里 memory 选项的内存配置为 1024 后,应用最新配置重启失败. 索性 ...
- Vagrant 手册之 Vagrantfile - 最低版本
原文地址 可以在 Vagrantfile 中指定一组 Vagrant 的版本,以强制人们使用带有 Vagrantfile 的特定版本的 Vagrant.这可以帮助解决使用带有 Vagrantfile ...
随机推荐
- JAVA总结--正则表达式
正则表达式定义: pattern 对象是一个正则表达式的编译表示.Matcher 对象是对输入字符串进行解释和匹配操作的引擎.PatternSyntaxException 是一个非强制异常类,它表示一 ...
- [BNDSOJ] #1106代码
#include<bits/stdc++.h> using namespace std; ]; ][]; int n; bool check(int i,int j) { ]==]==]= ...
- Spring boot集成Swagger,并配置多个扫描路径
Spring boot集成Swagger,并配置多个扫描路径 1:认识Swagger Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目 ...
- Sql批量插入时如果遇到相同的数据怎么处理
测试数据 -- 创建测试表1 CREATE TABLE `testtable1` ( `Id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT, `UserId` I ...
- vue-fiters过滤器的使用
1.定义过滤器 2.使用过滤器 ...... <el-table-column prop="user_gender" align="center" lab ...
- tomcat闪屏是jdk JAVA_HOEM环境变量配置问题
JAVA_HOME=D:\jdk.18
- 线程池ThreadPoolExecutor实现原理
线程属于稀缺资源,对于线程的创建规则,引用<阿里巴巴 Java 手册>中的一条进行说明. 本篇从源码方面介绍ThreadPoolExecutor对象,并简要解析线程池工作原理. 首先Thr ...
- openstack stein部署手册 10. 创建实例
# 建立网络(provider)与子网 openstack network create --share --external --provider-physical-network provider ...
- Matlab 多个版本的安装包下载、安装和激活教程 + 多套数学建模视频教程
目录 1. 关键词 1.1. 说明 2. 下载地址 2.1. OneDrive高速云盘 2.1.1. 多版本的安装包 2.1.2. 多套数学建模的视频教程 2.2. 百度云 3. 安装教程 1. 关键 ...
- WTSQueryUserToken failed
https://www.cnblogs.com/tabjin/articles/11057663.html 令牌错误 https://www.cnblogs.com/FCoding/archive/2 ...