2015-02-02 2 views
3

Vagrant를 설치하고 Vagrant에게 특정 플러그인을 설치하도록 지시 한 Ansible 플레이 북이 있습니다. 방랑은 필요로하는 보석을 설치하는 데 문제가 있습니다, 다음과 같이 말한다 :Anagers를 통한 Vagrant 플러그인 종속성 제어

 
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... 

내가 문제가 명령을 사용하여 노코 기리를 설치을 가지고 있지만 : 방랑 그것을처럼

 
$ sudo gem install nokogiri -v '1.6.6.2' 

, 내가설치할 수 있습니다 것으로 나타났습니다 노코 기리 수동으로,이 명령을 사용 :에에 내가 수동으로 말한다면 내가 수동으로 보석을 설치 한 후에도

 
$ sudo gem install nokogiri -v 1.6.6.2 -- --use-system-libraries --with-xml2-include=/usr/include/libxml2 

을 방랑은 계속 실패 플러그인을 실속 시키십시오.

이러한 종속성을보다 잘 제어 할 수있는 방법이있어 방랑하면 실패하지 않고 내 플레이 북을 완성 할 수 있습니까?

답변

0

sudo를 사용하여 루비 보석을 설치하는 것이 문제라고 생각합니다.

홈 디렉토리에 보석을 설치하고 관리하는 Ruby Version Manager를 설치하여이 문제를 해결했습니다.

RVM을 설치 한 후 sudo를 사용하지 않고 nokogiri를 설치할 수는 있지만 방랑제를 다시 설치하기 전까지는 설치하지 못했습니다. Anipal을 사용하여 신선한 환경을 만들고 있다면 처음으로 방랑자 (또는 다른 루비 물건)를 설치하기 전에 RVM을 설치할 수 있습니다. other ways to fix your gem permissions도 있습니다.

설치 루비 버전 관리자 (https://rvm.io/rvm/install)

$ \curl -sSL https://get.rvm.io | bash -s stable --ruby 

$ gem install nokogiri 

다시 설치 방랑 (http://www.vagrantup.com/downloads)