virtualbox+vagrant学习-2(command cli)-1-vagrant box命令

vagrant box

这是用于管理(添加、删除等)boxes的命令。

box 是一个打包好的操作系统,是一个后缀名为 .box 的文件,其实是一个压缩包,里面包含了 Vagrant 的配置信息和 VirtualBox 的虚拟机镜像文件

查看现在本机上所拥有的box:

userdeMBP:~ user$ vagrant box list
hashicorp/precise64 (virtualbox, 1.1.0)

现在本机上有hashicorp/precise64这个box

查看命令vagrant box下的子命令有:

https://www.vagrantup.com/docs/cli/box.html

1》add

格式:

vagrant box add [options] <name, url, or path>

添加一个box到本地

userdeMBP:~ user$ vagrant box add -h
Usage: vagrant box add [options] <name, url, or path> Options: -c, --clean Clean any temporary download files清除任何临时下载文件
-f, --force Overwrite an existing box if it exists如果存在,覆盖现有的box
--insecure Do not validate SSL certificates 不验证SSL证书
--cacert FILE CA certificate for SSL download 用于SSL下载的CA证书
--capath DIR CA certificate directory for SSL download 用于SSL下载的CA证书目录
--cert FILE A client SSL cert, if needed 如果需要,客户端SSL证书
--location-trusted Trust 'Location' header from HTTP redirects and use the same credentials for subsequent urls as for the initial one
HTTP重定向的可信“Location”头,并对后续url使用与初始url相同的凭据
--provider PROVIDER Provider the box should satisfy box满意的Provider,即使用的Provider
--box-version VERSION Constrain version of the added box 约束添加的box的版本 The box descriptor can be the name of a box on HashiCorp's Vagrant Cloud,or a URL, or a local .box file, or a local .json file containing the catalog metadata.
box描述符,即<name, url, or path> 可以是HashiCorp vagrant云上的一个box的名称、URL、本地 .box文件或包含目录元数据的本地 .json 文件 The options below only apply if you're adding a box file directly, and not using a Vagrant server or a box structured like 'user/box':
以下选项只适用于你直接添加一个box文件,而不是使用一个vagrant服务器或一个结构类似“user/box”的box: --checksum CHECKSUM Checksum for the box box的校验和
--checksum-type TYPE Checksum type (md5, sha1, sha256) 校验和类型
--name BOX Name of the box 为box起的名字
-h, --help Print this help 打印帮助

⚠️校验和:

Checksums for versioned boxes or boxes from HashiCorp's Vagrant Cloud: For boxes from HashiCorp's Vagrant Cloud, the checksums are embedded in the metadata of the box. The metadata itself is served over TLS and its format is validated

对于版本化的box或来自HashiCorp vagrant云的box的校验和:

对于来自HashiCorp vagrant云的box,校验和嵌入在box的元数据中。元数据本身是通过TLS提供的,它的格式是经过验证的

2》list

格式:

vagrant box list [options]

这个命令列出了安装到Vagrant中的所有boxes

userdeMBP:~ user$ vagrant box list -h
Usage: vagrant box list [options] Options: -i, --box-info Displays additional information about the boxes 显示关于这些boxes的其他信息
-h, --help Print this help 打印帮助信息

3》outdated

格式:

vagrant box outdated [options]

检查正在使用的box是否有可用的新版本。如果传入--global标志,将检查所有boxes是否有更新
检查更新涉及刷新与某个box关联的元数据。这通常需要网络连接

userdeMBP:~ user$ vagrant box outdated -h
Usage: vagrant box outdated [options] Checks if there is a new version available for the box that are you are using. If you pass in the --global flag, all boxes will be checked for updates.
检查正在使用的box是否有可用的新版本。如果传入--global标志,将检查所有boxes是否有更新 Options: --global Check all boxes installed 检查所有已安装的boxes
--insecure Do not validate SSL certificates 不验证SSL证书
--cacert FILE CA certificate for SSL download 用于SSL下载的CA证书
--capath DIR CA certificate directory for SSL download 用于SSL下载的CA证书目录
--cert FILE A client SSL cert, if needed 如果需要,使用的客户端SSL证书
-h, --help Print this help 打印帮助信息

4》prune

格式:

vagrant box prune [options]

此命令删除已安装框的旧版本。如果该箱子目前正在使用,vagrant将要求确认

userdeMBP:~ user$ vagrant box prune -h
Usage: vagrant box prune [options] Options: -p, --provider PROVIDER The specific provider type for the boxes to destroy. 要销毁的指定提供provider类型的boxes
-n, --dry-run Only print the boxes that would be removed. 只打印要删除的boxes
--name NAME The specific box name to check for outdated versions. 要检查的指定过时版本的box名字
-f, --force Destroy without confirmation even when box is in use. 即使box在使用中,也要在未经确认的情况下销毁。即强制销毁
-h, --help Print this help 打印帮助信息

5》remove

格式:

vagrant box remove <name>

此命令从vagrant中删除与给定名称匹配的box

如果一个box有多个providers,必须要使用--provider标签指定确切的provider;如果一个box有多个版本,你可以使用--box-version标签选择你要删除的版本,或者使用--all标签删除所有版本

userdeMBP:~ user$ vagrant box remove -h
Usage: vagrant box remove <name> Options: -f, --force Remove without confirmation. 强制删除
--provider PROVIDER The specific provider type for the box to remove 要删除该指定provider类型的box
--box-version VERSION The specific version of the box to remove 删除该指定版本的box
--all Remove all available versions of the box 删除box的所有可用版本
-h, --help Print this help 打印帮助信息

6》repackage

格式:

vagrant box repackage <name> <provider> <version>

这个命令重新打包给定的box,并将其放到当前目录中,以便你可以重新分发它。可以使用vagrant box list命令检索该box的名称、provider和版本。

当你添加一个box时,Vagrant会将其解包并存储在内部。原来的*.box文件不保存。这个命令对于从安装的vagrant box 回收*.box文件非常有用。

只有-h,--help 这个option

7》update

格式:

vagrant box update [options]

如果在当前vagrant环境下有可用的更新,此命令将对box进行更新。该命令还可以通过指定--box标志更新特定的框(在活动的vagrant环境之外)。

请注意,更新此box不会更新已经运行的vagrant机器。为了反映box里的变化,你必须摧毁并重新启动这台vagrant机器

如果你只是想检查是否有可用的更新,请使用vagrant box outdated命令

userdeMBP:~ user$ vagrant box update -h
Usage: vagrant box update [options] Updates the box that is in use in the current Vagrant environment,if there any updates available. This does not destroy/recreate the machine, so you'll have to do that to see changes.
如果有可用的更新,则更新当前vagrant环境中使用的box。这不会破坏/重新创建机器,所以你必须这样做才能看到更改。 To update a specific box (not tied to a Vagrant environment), use the --box flag.
要更新特定的框(不绑定到vagrant环境),请使用--box标志 Options: --box BOX Update a specific box 更新指定的box
--provider PROVIDER Update box with specific provider 更新指定provider的box
-f, --force Overwrite an existing box if it exists 只要存在就强制复写该存在的box
--insecure Do not validate SSL certificates 不验证SSL证书
--cacert FILE CA certificate for SSL download 用于SSL下载的CA证书
--capath DIR CA certificate directory for SSL download 用于SSL下载的CA证书目录
--cert FILE A client SSL cert, if needed 如果需要,使用的客户端SSL证书
-h, --help Print this help 打印帮助信息
上一篇:EF Core


下一篇:virtualbox+vagrant学习-2(command cli)-7-vagrant login命令