2011-04-08 2 views
0

나는 rvm ruby ​​@ gemset 콤보 내부에서 bundler를 사용하여 루비 앱 (Thaze를 사용하여 차례로 Ramaze를 사용)을 전환했습니다. 나는 그것의 콘솔 버전에 접근 할 수있다. 그래서 그것이 가지고있는 보석에 대해 행복하다. 내가 시도하고 (의 nginx에서 승객 통해) 서버를 통해 액세스합니다, 그러나, 나는 승객이 오류를 얻을 :rvm을 가진 승객의 루비 앱 실행 문제

소스의에서 activesupport-2.3.8을 찾을 수 없습니다 (Bundler를 :: GemNotFound)

rvm에서 앱의 gemset에 activesupport 2.3.8이 설치되어 있기 때문에이 내용을 이해할 수 없습니다. 어쩌면 승객은 rvm에 대해 모르거나 올바른 rvm을 사용하는 것을 알고 있습니까? 나는 승객이 내 앱에 어떻게 연결되는지, 그리고 예를 들어 rvm에 대해 알 필요가 있는지 여부를 확신하지 못한다. 내가 본 승객에 대한 유일한 참조는 내 nginx 설정 블록에있다. 내가 말하는 곳은 passenger_enabled on;

다른 누구에게도이 문제가 있었습니까?

최대

편집 : 내 설정에 대한 좀 더 세부 정보 : /var/www/apps/akrotoski 에서

내 애플은이는 RVM/gemset에 그냥이 될 수 있음을 나에게 발생 [email protected]

라고 루트 아래에서 실행중인 nginx 문제. 내가 루트로 전환 echo $PATH을한다면 나는 내 응용 프로그램의 RVM에 echo $PATH 내가

/home/deploy/.rvm/gems/[email protected]/bin:/home/deploy/.rvm/gems/[email protected]/bin:/home/deploy/.rvm/rubies/ruby-1.8.7-p302/bin:/home/deploy/.rvm/bin:/opt/ruby-enterprise-1.8.7-2011.01/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

그래서 어쩌면의 nginx/승객하는 방식으로 실행 얻을 경우

/opt/ruby-enterprise-1.8.7-2011.01/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

를 얻을 수 rvm을 사용하지 않습니까? 내가 말했듯이 나는 승객이 실제로 이런 식으로 앱에 어떻게 연결하는지에 대해 무지하다. 이 시스템 전체 설치이며이/usr/지방/RVM에 설치되도록

+0

승객/nginx는 어떻게 시작하나요? 어떤 명령을 사용하고 있으며 어떤 디렉토리에서 실행하고 있습니까? –

+0

안녕하세요. 나는'/etc/init.d/nginx restart'로 nginx를 시작합니다. 내가 passenger_enabled를 가지고 있기 때문에; 블록이 내 응용 프로그램에 대한 nginx 구성에 다음 자동으로 선택해야합니다. 나는 응용 프로그램의 루트 폴더에서'touch tmp/restart.txt'를 사용하여 승객 사용 가능 응용 프로그램을 다시 시작할 수 있습니다. 폴더에 관한 나의 OP에 대한 자세한 내용을 추가하겠습니다. –

+0

rvm을 sudo 및 시스템 전체 또는 특정 사용자 용으로 설치 했습니까? –

답변

1

루트로 RVM을 설치해야합니다 :

sudo bash < <(curl -s https://rvm.beginrescueend.com/install/rvm) 

당신은 설치에 대한 here 자세한 내용을보실 수 있습니다. 또한 기본 rvm이 nginx 응용 프로그램을 시작하기위한 올바른 rvm인지 확인해야합니다. 예를 들어, 다음과 같이 할 수 있습니다.

sudo rvm --default [email protected] 
sudo /etc/init.d/nginx restart 
+0

cool - 'deploy'사용자 아래에 설치된 rvm i를 제거해야합니까? –

+0

새로 설치할 때부터 시작하는지 확인하는 것이 좋습니다. –

+0

pan - 나는 rvm 홈 페이지 (위와 같이 sudo를 빼고 게시 한 것과 동일 함)에 따라 설치를 수행하고 root는이 경우 .bashrc (이 경우 /root/.bashrc) 편집에 대한 지시 사항을 따라 여분의 마지막 줄. 하지만 난 여전히 'bash : rvm : command not found'라고 대답 할 때 rvm을 호출하려고한다. 나는 또한 sudo로 rvm을 설치하고 sudo로 기본 rvm을 설정하고 sudo로 그 기본값으로 전환하는 등의 명령을 정확히 따르려고했습니다. 그런 다음 nginx를 다시 시작했는데 정확히 똑같은 문제가 발생했습니다 : ( –

관련 문제