Docker:hashicorp / boot2docker无法在公司代理

时间:2015-11-02 22:56:12

标签: proxy docker vagrant

我正在尝试配置一些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

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

更新

弗雷德里克在下面提供了一个合适的解决方法,但它突出显示我过快地问了我的问题。

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

我可以指示Windows上的那些人手动安装盒子(他们必须安装其他依赖项,比如cygwin),但如果说明更加统一,它会更容易。

1 个答案:

答案 0 :(得分:1)

您是否尝试直接添加boot2docker框,如

vagrant box add --insecure hashicorp/boot2docker