简体   繁体   English

为什么我不能与厨师一起安装一个无所事事的环境? 证书验证失败(OpenSSL :: SSL :: SSLError)

[英]Why can't I install a vagrant environment with chef? certificate verify failed (OpenSSL::SSL::SSLError)

My environment: 我的环境:

OS: Mac 10.10.1
rbenv: rbenv 0.4.0-129-g7e0e85b
Ruby: ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-darwin14.0]

My Vagrantfile: 我的Vagrantfile:

# -*- mode: ruby -*-
# vi: set ft=ruby :

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  # Use Ubuntu 14.04 Trusty Tahr 64-bit as our operating system
  config.vm.box = "precise32"

  # Configurate the virtual machine to use 2GB of RAM
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "2048"]
  end

  # Forward the Rails server default port to the host
  config.vm.network :forwarded_port, guest: 3000, host: 3000

  # Use Chef Solo to provision our virtual machine
  config.vm.provision :chef_solo do |chef|
    chef.cookbooks_path = ["cookbooks", "site-cookbooks"]

    chef.add_recipe "apt"
    chef.add_recipe "nodejs"
    chef.add_recipe "ruby_build"
    chef.add_recipe "rbenv::user"
    chef.add_recipe "rbenv::vagrant"
    chef.add_recipe "vim"
    chef.add_recipe "mysql::server"
    chef.add_recipe "mysql::client"

    # Install Ruby 2.1.2 and Bundler
    # Set an empty root password for MySQL to make things simple
    chef.json = {
      rbenv: {
        user_installs: [{
          user: 'vagrant',
          rubies: ["2.1.2"],
          global: "2.1.2",
          gems: {
            "2.1.2" => [
              { name: "bundler" }
            ]
          }
        }]
      },
      mysql: {
        server_root_password: ''
      }
    }
  end
end

My Cheffile: 我的厨师档案:

site "http://community.opscode.com/api/v1"

cookbook 'apt'
cookbook 'build-essential'
cookbook 'mysql'
cookbook 'ruby_build'
cookbook 'nodejs', git: 'https://github.com/mdxp/nodejs-cookbook'
cookbook 'rbenv', git: 'https://github.com/fnichol/chef-rbenv'
cookbook 'vim'

After I run vagrant up , I got these errors: 当我vagrant up ,出现以下错误:

➜ MY_RAILS_PROJECT vagrant up
/Applications/Vagrant/embedded/gems/gems/vagrant-1.3.5/lib/vagrant/util/which.rb:32: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777
Bringing machine 'default' up with 'virtualbox' provider...
[default] Importing base box 'precise32'...
[default] Matching MAC address for NAT networking...
[default] Setting the name of the VM...
[default] Clearing any previously set forwarded ports...
[default] Installing Chef cookbooks with Librarian-Chef...
[default] Destroying VM and associated drives...
[default] Running cleanup tasks for 'chef_solo' provisioner...
/Applications/Vagrant/embedded/lib/ruby/1.9.1/net/http.rb:800:in `connect': SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
from /Applications/Vagrant/embedded/lib/ruby/1.9.1/net/http.rb:800:in `block in connect'
from /Applications/Vagrant/embedded/lib/ruby/1.9.1/timeout.rb:55:in `timeout'
from /Applications/Vagrant/embedded/lib/ruby/1.9.1/timeout.rb:100:in `timeout'
from /Applications/Vagrant/embedded/lib/ruby/1.9.1/net/http.rb:800:in `connect'
from /Applications/Vagrant/embedded/lib/ruby/1.9.1/net/http.rb:756:in `do_start'
from /Applications/Vagrant/embedded/lib/ruby/1.9.1/net/http.rb:745:in `start'
from /Users/jingqiangzhang/.vagrant.d/gems/gems/librarian-chef-0.0.4/lib/librarian/chef/source/site.rb:353:in `block in http_get'

I have found this article: 我发现这篇文章:

I can confirm my openssl version: 我可以确认我的openssl版本:

➜  MY_RAILS_PROJECT  openssl version
OpenSSL 1.0.1j 15 Oct 2014

I don't know what's the reason. 我不知道是什么原因

Change your site to https://supermarket.chef.io/api/v1 . 将您的网站更改为https://supermarket.chef.io/api/v1 If that still fails, you'll need to update your TLS CA data. 如果仍然失败,则需要更新TLS CA数据。 I'm not sure how Vagrant deals with this, but you can try using certifi if you have a working Python install: 我不确定Vagrant如何处理此问题,但如果安装了有效的Python,则可以尝试使用certifi:

pip install certifi
export SSL_CERT_FILE="$(python -m certifi)"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 无法绕过OpenSSL验证 - 证书验证失败(OpenSSL :: SSL :: SSLError) - Can't bypass OpenSSL verification - certificate verify failed (OpenSSL::SSL::SSLError) 在 JRuby 中出现错误:“OpenSSL::SSL::SSLError:证书验证失败” - Getting error: “OpenSSL::SSL::SSLError: certificate verify failed” in JRuby 使用Mechanize对象获取`证书验证失败(OpenSSL :: SSL :: SSLError)`错误 - Getting the `certificate verify failed (OpenSSL::SSL::SSLError)` erro with Mechanize object SSL_connect returned=1 errno=0 state=error: certificate verify failed 我也尝试安装 gem openssl 但不能 - SSL_connect returned=1 errno=0 state=error: certificate verify failed also I tried to install gem openssl but can't 证书续订后,Ruby Net :: HTTP响应OpenSSL :: SSL :: SSLError“证书验证失败” - Ruby Net::HTTP responds with OpenSSL::SSL::SSLError “certificate verify failed” after certificate renewal Bundler:读取服务器证书B:证书验证失败(OpenSSL :: SSL :: SSLError) - Bundler: read server certificate B: certificate verify failed (OpenSSL ::SSL::SSLError) Ruby Imap OpenSSL::SSL::SSLError:读取服务器证书 B:证书验证失败 - Ruby Imap OpenSSL::SSL::SSLError: read server certificate B: certificate verify failed 使用Ruby Gem'cryptsy-api'时,OpenSSL :: SSL :: SSLError“证书验证失败” - OpenSSL::SSL::SSLError “certificate verify failed” when using Ruby Gem 'cryptsy-api' OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) - OpenSSL::SSL::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed (unable to get local issuer certificate) connect:SSL_connect返回= 1 errno = 0 state = SSLv3读取服务器证书B:证书验证失败(OpenSSL :: SSL :: SSLError) - connect: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (OpenSSL::SSL::SSLError)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM