【问题标题】:Docker: hashicorp/boot2docker fails to download behind corporate proxyDocker:hashicorp/boot2docker 无法在公司代理后面下载
【发布时间】:2015-11-02 22:56:12
【问题描述】:

我正在尝试将许多 docker 容器配置为从 vagrant 运行,但是公司代理阻止了 boot2docker 的下载,这是在 Vagrant 在不支持容器的操作系统上运行时下载的 VM;该错误是 SSL 验证错误。我的公司代理进行 MITM 内容检查,因此它用自己的证书替换了 HTTPS 证书。

我已经设置了 http_proxy (etc) 环境变量并尝试了 config.vm.box_download_insecure 和 config.vm.box_download_ca_cert(使用包含代理证书的自定义 cacert.pem)。

此配置有效:

Vagrant.configure(2) do |config|

  #config.vm.box_download_insecure = "true"
  config.vm.box_download_ca_cert = "cacert.pem"
  config.vm.box = "hashicorp/precise64"
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "1024"
    vb.cpus = "2"
  end
end

这不是:

Vagrant.configure(2) do |config|

  #config.vm.box_download_insecure = "true"
  config.vm.box_download_ca_cert = "cacert.pem"
  config.vm.provider "docker" do |d|
    d.build_dir = "../path/to/docker"
    d.has_ssh = true
  end
end

有没有人知道为什么它不起作用?

更新:

Frederick 在下面提供了一个合适的解决方法,但它强调我的问题问得太快了。

Vagrant 的 docker 提供程序的一个特点是,当用户调用“vagrant up”时,它会在需要时(例如在 Windows 或 OSX 上运行)自动下载 boot2docker。所以有问题的开发人员并不需要关心他是否需要代理虚拟机,它会工作的。

我可以指导那些在 windows 上手动安装盒子(无论如何他们都必须安装其他依赖项,如 cygwin),但如果说明更统一,它只会更容易。

【问题讨论】:

    标签: proxy docker vagrant


    【解决方案1】:

    你有没有试过直接像直接添加boot2docker框

    vagrant box add --insecure hashicorp/boot2docker 
    

    【讨论】:

    • Frederic,这可以将图像放到机器上,然后一切正常。我现在意识到虽然我输入的问题太快了,但应该澄清一下原来的“vagrant up”命令自动下载 boot2docker 失败。我已经更新澄清。
    • 老实说,我认为vm.box_download_insecure 会起作用。您是否仅在没有vm.box_download_ca_cert 的情况下尝试了该参数?
    • 是的,我先尝试了不安全的,当它不起作用时,我尝试了 ca_cert。这两个选项都适用于 hashcorp/precise64,但在使用命令 vagrant up 时都不适用于 hashcorp/boot2docker。
    猜你喜欢
    • 1970-01-01
    • 2016-04-10
    • 2019-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-28
    相关资源
    最近更新 更多