配置的命名空间:config.vm
config.vm
中的设置修改 Vagrant 管理的机器的配置。
1. 可用的设置项
config.vm.boot_timeout
Vagrant 等待机器启动并可用的时间,单位是秒。默认是 300 秒。
config.vm.box
这配置了该机器将用哪个 box 启动。这里的值应该是已安装 box 的名称或 HashiCorp 的 Vagrant Cloud 中 box 的简写名称。
此选项需要 Vagrant 1.5 及以上版本。可以从 Vagrant 安装程序页面下载最新版本的 Vagrant。
config.vm.box_check_update
如果设为 true,Vagrant 会在每次执行 vagrant up
时检查每个 box 的更新情况。如果发现更新,Vagrant 会告诉用户。这个选项默认设为 true。有支持更新的 box 时才能检查更新(HashiCorp 的 Vagrant Cloud 或其他版本控制下的 box)。
config.vm.box_download_checksum
由 config.vm.box_url
指定的 box 的校验和。如果未指定,则不会执行校验和比较。如果指定,Vagrant 会将下载 box 的校验和与这个值进行比较,如果它们不匹配的话报错。只有当 Vagrant 必须下载该 box 时,才会检查校验和。
如果指定了这个选项,则还必须指定 config.vm.box_download_checksum_type
。
config.vm.box_download_checksum_type
由 config.vm.box_download_checksum
指定的校验和类型。目前支持的类型有“md5”、“sha1”及“sha256”。
config.vm.box_download_client_cert
如果需要,下载 box 时使用的客户端证书的路径。默认情况下,下载 box 时不使用客户端证书。
config.vm.box_download_ca_cert
直接下载 box 时使用 CA 证书包的路径。默认情况下,Vagrant 将使用 Mozilla CA 证书包。
config.vm.box_download_ca_path
包含 CA 证书的目录的路径,用于直接下载 box。默认情况下,Vagrant 将使用 Mozilla CA 证书包。
config.vm.box_download_insecure
如果为 true,将不会验证来自服务器的 SSL 证书。默认情况下,如果 URL 是 HTTPS URL,则 SSL 证书将被验证。
config.vm.box_download_location_trusted
If true, then all HTTP redirects will be treated as trusted. That means credentials used for initial URL will be used for all subsequent redirects. By default, redirect locations are untrusted so credentials (if specified) used only for initial HTTP request.
如果为 true,那么所有 HTTP 重定向将被视为可信。这意味着用于初始 URL 的凭证将用于所有后续重定向。默认情况下,重定向位置不受信任,因此凭据(如果指定)仅用于初始 HTTP 请求。
config.vm.box_url
可以找到配置过的 box 的 URL。如果 config.vm.box
是 HashiCorp 的 Vagrant Cloud 中的 box 的缩写,则不需要指定该值。否则,它应该指向可以找到 box 的适当位置。
这也可以是多个 URL 组成的数组。将按顺序尝试网址。注意,任何客户端证书、不安全的下载设置等都将应用于此列表中的所有 URL。
通过使用 file://scheme
,URL 也可以是本地文件。例如:“file:///tmp/test.box”。
config.vm.box_version
要使用的 box 的版本。默认为“>=0”(最新的可用版本)。可以包含任意约束列表,用逗号分隔,例如 :>=1.0,<1.5
。当给出约束时,Vagrant 将使用满足这些约束条件的最新可用 box。
config.vm.communicator
用于连接到 guest box 的通信器类型。默认情况下是“ssh”,但对于 Windows 虚拟机应更改为“winrm”。
config.vm.graceful_halt_timeout
调用 vagrant halt
时 Vagrant 等待机器正常停止的时间。默认为 60 秒。
config.vm.guest
将在本机中运行的客户操作系统。默认为 linux,Vagrant 会自动检测正确的发行版。Vagrant 需要知道这些信息才能执行某些客户操作系统特定的事情,例如挂载目录和配置网络。
config.vm.hostname
机器应具有的主机名。默认为 nil
。如果为 nil
,Vagrant 将不管理主机名。如果设置为字符串,主机名将在引导时设置。
config.vm.network
在机器上配置网络。参考 这里。
config.vm.post_up_message
执行 vagrant up
之后显示给用户的消息,可以用于指示如何访问开发环境的各个组件等。
config.vm.provider
配置 provider 特定的配置,该配置用于修改特定于某个 provider 的设置。如果您正在配置的 provider 不存在或未在运行 Vagrant 的系统上设置,则 Vagrant 将忽略此配置块。这允许共享一个适用于多个 provider 的 Vagrantfile,即使没有安装所有的 provider(至少要安装 Vagrantfile 要求的一个 provider)。
config.vm.provision
在机器上配置 provisioner,以便在创建机器时自动安装和配置软件。请参阅预配置页面以获取有关此设置如何工作的更多信息。
config.vm.synced_folder
在机器上配置已同步的目录,以便主机上的目录可以与客户机同步。
config.vm.usable_port_range
Vagrant 可以使用的用来处理端口冲突的一系列端口。默认为 2200..2250。