❤️《Vagrant官方中文文档》❤️ ④ 命令行界面之基础命令

Posted Lucifer三思而后行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了❤️《Vagrant官方中文文档》❤️ ④ 命令行界面之基础命令相关的知识,希望对你有一定的参考价值。

以下为个人翻译,包含个人一些截图,本打算自用,现分享给大家,欢迎👏🏻纠错~

Connect

命令: vagrant connect NAME

connect 命令通过启用对共享环境的访问来补充 share 命令。 您可以在 Vagrant Share 部分了解 Vagrant Share 的所有详细信息。

下面提供了对此命令的可用命令行标志的参考。

子命令选项

  • --disable-static-ip 命令不会启动小型虚拟机来创建您可以访问的静态 IP。 设置此标志后,访问连接的唯一方法是使用输出的 SOCKS 代理地址。

  • --static-ip IP 告诉 connect 虚拟机使用的静态 IP 地址。 默认情况下,Vagrant connect 将使用在 172.16.0.0/16 空间中可用的 IP 地址。

  • --ssh 通过 SSH 连接到与 vagrant share --ssh 共享的环境。

Destroy

命令: vagrant destroy [name|id]

此命令停止 Vagrant 管理的正在运行的机器,并销毁在机器创建过程中创建的所有资源。 运行此命令后,您的计算机将恢复最初状态,就好像您从未创建过访客计算机一样。

对于基于 linux 的来宾,Vagrant 使用 shutdown 命令优雅地终止机器。 由于操作系统的不同性质,shutdown 命令可能存在于来宾 $PATH 的许多不同位置。 使用包含关闭命令的目录正确填充 $PATH 是来宾计算机的责任。

子命令选项

  • -f--force 强制销毁,无需确认。
  • --[no-]parallel 如果 虚拟机系统 支持,可以并行销毁多台机器。
  • -g--graceful 优雅地关闭机器。

使用 destroy 命令不会删除在 vagrant up 期间可能已安装在您计算机上的 Box 。 因此,即使您运行 vagrant destroy,系统中安装的 Box 仍将存在于硬盘驱动器上。 要将您的计算机恢复到 vagrant up 命令之前的状态,您需要使用 vagrant box remove。

Global Status

命令: vagrant global-status

此命令将告诉您当前登录用户的系统上所有活动 Vagrant 环境的状态。

此命令不会主动验证机器的状态,而是基于缓存。 因此,可能会看到陈旧的结果(机器说它们正在运行,但实际上并没有)。 例如,如果您重新启动计算机,Vagrant 不会知道。 要清除无效条目,请使用 --prune 标志运行 global status。

输出 6864cf2 的 ID 可用于从系统的任何位置控制 Vagrant 机器。 任何使用目标机器的 Vagrant 命令(例如 up、halt、destroy)都可以使用这个 ID 来控制它。 例如:vagrant destroy a1b2c3。

子命令选项

  • --prune 从列表中删除无效条目。 这比简单地列出条目要耗时得多。

虚拟机系统没有出现

如果您的虚拟机系统没有出现,您可能必须先进行 vagrant destroy,然后进行 vagrant up。

如果您刚刚从 Vagrant 的先前版本升级,则现有环境将不会显示在 global-status 中,直到它们被销毁并重新创建。

Halt

命令: vagrant halt [name|id]

此命令关闭 Vagrant 正在管理的正在运行的机器。

Vagrant 将首先尝试通过运行来宾操作系统关闭方式来正常关闭机器。 如果失败,或者指定了 --force 标志,Vagrant 将有效地关闭机器的电源。

对于基于 linux 的来宾,Vagrant 使用 shutdown 命令优雅地终止机器。 由于操作系统的不同性质,shutdown 命令可能存在于来宾 $PATH 的许多不同位置。 使用包含关闭命令的目录正确填充 $PATH 是来宾计算机的责任。

子命令选项

  • -f 或 --force 不要尝试强制关闭机器。 这会影响主机的电源。

Init

命令:vagrant init [name [url]]

如果 Vagrantfile 尚未存在,则通过创建初始 Vagrantfile ,将当前目录初始化为 Vagrant 环境。

如果给出第一个参数,它将在创建的 Vagrantfile 中预填充 config.vm.box 设置。

如果给出第二个参数,它将在创建的 Vagrantfile 中预填充 config.vm.box_url 设置。

子命令选项

  • --box-version (可选)要添加到 Vagrantfile 的 box 版本或 box 版本约束。
  • --force 如果指定,此命令将覆盖任何现有的 Vagrantfile。
  • --minimal 如果指定,将创建一个没有注释的 Vagrantfile。 这个 Vagrantfile 不包含普通 Vagrantfile 包含的说明性注释。
  • --output FILE 这会将 Vagrantfile 输出到给定的文件。 如果这是“-”,则 Vagrantfile 将被输出到当前终端。
  • --template FILE 提供用于生成 Vagrantfile 的自定义 ERB 模板。


举例:

创建一个基本的 Vagrantfile:

vagrant init hashicorp/bionic64

创建一个最小的 Vagrantfile(没有注释):

vagrant init -m hashicorp/bionic64

创建一个新的 Vagrantfile,覆盖当前路径的文件:

vagrant init -f hashicorp/bionic64

从特定框 URL 使用特定框创建 Vagrantfile:

vagrant init my-company-box https://example.com/my-company.box

创建一个 Vagrantfile,将框锁定到版本约束:

vagrant init --box-version '> 0.1.5' hashicorp/bionic64

Login

命令:vagrant login

login 命令用于向 HashiCorp 的 Vagrant Cloud 服务器进行身份验证。 只有在访问受保护的 Box 或使用 Vagrant Share 时才需要登录。

使用 Vagrant 不需要登录。 绝大多数 Vagrant 命令不需要登录。 只有某些功能需要登录。

子命令选项

  • --check 这将检查您是否已登录。除了输出您是否已登录外,如果您已登录,该命令的退出状态将为 0,如果您未登录,则退出状态为 1。
  • --logout 如果您已登录,这会将您注销。如果您已经注销,此命令将不执行任何操作。 如果您已经注销,则调用此命令不是错误。
  • --token 这将手动将 Vagrant Cloud 登录令牌设置为提供的字符串。 假定此令牌是有效的 Vagrant Cloud 访问令牌。


注意:该命令选项 login 已经废弃!建议使用 vagrant cloud auth login 来进行登录。

Package

命令:vagrant package [name|id]

这将当前运行的 VirtualBox 或 Hyper-V 环境打包到一个可重用的 Box 中。此命令只能与基于 同一虚拟机软件 实现的其他 虚拟机软件 一起使用。

子命令选项

  • --base NAME 不是打包 Vagrant 管理的 VirtualBox 机器,而是打包 VirtualBox 管理的 VirtualBox 机器。 NAME 应该是 VirtualBox GUI 中机器的名称或 UUID,即主机名。 目前此选项仅适用于 VirtualBox。
  • --output NAME 生成的包将保存为 NAME。 默认情况下,它将保存为 package.box。
  • --include x,y,z 附加文件将与盒子一起打包。 这些可以被打包的 Vagrantfile(记录如下)用来执行额外的任务。
  • --info path/to/info.json 该包将包含一个自定义 JSON 文件,其中包含在使用 -i 标志调用时由 list 命令显示的信息。
  • --vagrantfile FILE 将 Vagrantfile 与框一起打包,当使用结果框时,该框作为 Vagrantfile 加载顺序的一部分加载。

一个常见的误解是 --vagrantfile 选项将打包一个 Vagrantfile,当 vagrant init 与此框一起使用时使用该Vagrantfile。 不是这种情况。 相反,当使用该框时,作为 Vagrant 加载过程的一部分加载和读取 Vagrantfile。


本次分享到此结束啦~

如果觉得文章对你有帮助,点赞、收藏、关注、评论,一键四连支持,你的支持就是我创作最大的动力。

以上是关于❤️《Vagrant官方中文文档》❤️ ④ 命令行界面之基础命令的主要内容,如果未能解决你的问题,请参考以下文章

❤️《Vagrant官方中文文档》❤️ ② 命令行界面之Box语法

❤️《Vagrant官方中文文档》❤️ ② 命令行界面之Box语法

❤️《Vagrant官方中文文档》❤️ ③ 命令行界面之Cloud命令

❤️《Vagrant官方中文文档》❤️ ③ 命令行界面之Cloud命令

❤️《Vagrant官方中文文档》❤️ ⑤ 命令行界面之 Plugin(插件)

❤️《Vagrant官方中文文档》❤️ ⑤ 命令行界面之 Plugin(插件)