Vagrant 项目在来宾存在之前就有一条主机下载路径,而来宾配置器和包管理工具还有另一条路径。请分别在它们运行的位置进行配置。

对于使用这些变量的主机工具,一条示例路由是:

export http_proxy=http://gateway.example:8080
export https_proxy=http://gateway.example:8080

Vagrant 记录了用于 HTTP box 下载的 http_proxy。获取插件同样需要从主机可达;来宾配置插件无法自行下载。HTTPS 目标仍可使用 HTTP 代理值。对于相关主机或来宾客户端未配置代理凭据的获准公开下载,HTTP 代理列表可以提供合适的 HTTP 端点。

如果已安装兼容的 vagrant-proxyconf,请通过 Vagrantfile 为来宾指定其路由:

Vagrant.configure("2") do |config|
  if Vagrant.has_plugin?("vagrant-proxyconf")
    config.proxy.http = "http://gateway.example:8080"
    config.proxy.https = "http://gateway.example:8080"
    config.proxy.no_proxy = "localhost,127.0.0.1"
  end
end

该插件会在配置器之前写入受支持的来宾配置。它的 VAGRANT_HTTP_PROXY 及相关输入可能覆盖文件设置,因此当修改未生效时请检查它们。

从来宾的角度看,localhost 指来宾自身。位于主机 loopback 上的代理需要一条可显式访问的路径,而不是复制的主机 URL。shell 配置器的 export 也只在该 shell 及其子进程中生效;它不会建立后续的登录或服务策略。

如需移除,请使用该插件文档中给出的空/false 输入清除已写入来宾的配置。关闭主机终端不会删除这些持久文件。

相关文章