我有一个安装 Vagrant 的 Ansible 剧本,然后指示 Vagrant 安装特定的插件。 Vagrant 在安装所需的 gem 时遇到问题,并说:
An error occurred while installing nokogiri (1.6.6.2), and Bundler cannot continue. Make sure that `sudo gem install nokogiri -v '1.6.6.2'` succeeds before bundling. stdout: Installing the 'vagrant-aws --version '0.5.0'' plugin. This can take a few minutes...
虽然我在使用命令安装 Nokogiri 时遇到问题:
$ sudo gem install nokogiri -v '1.6.6.2'
正如 vagrant 所做的那样,我发现我可以使用以下命令手动安装 Nokogiri:
$ sudo gem install nokogiri -v 1.6.6.2 -- --use-system-libraries --with-xml2-include=/usr/include/libxml2
即使在我手动安装 gem 之后,如果我手动告诉它安装插件,vagrant 仍然会失败。
有没有办法更好地控制这些依赖关系,以便 vagrant 不会失败并且我的 playbook 会完成?
最佳答案
事实证明我缺少一些关键依赖项:build-essential
、libxslt1-dev
、libxml2-dev
和 zlib1g-dev
。我在这里找到了这条评论:https://github.com/mitchellh/vagrant-aws/issues/163#issuecomment-27603855很有帮助。
关于ruby - 通过 Ansible 控制 Vagrant 插件依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28287904/