2013-12-17 4 views
0

우분투 12.04 서버와 여러 레일 3.2.14 사이트가 있습니다. 새로운 사이트 배포 (카피 스트라노를 통해)를 할 때마다 libv8의 전체 설치를 수행하기 때문에 첫 번째 설치에는 20 - 30 분이 걸립니다. 이미 libv8 보석을 컴퓨터에 설치했지만 (gem list).Libv8 및 theraracer - 모든 새 사이트 배포에 전체 설치가 필요합니까?

나는 binary version을 시도하고 theraracer의 버전을 변경하려고 시도했습니다.

는 여기에 내가 카피 스트라 노에서 자세한 정보 출력을 설정 한

group :assets do 
    gem 'sass-rails', '~> 3.2.6' 
    gem 'coffee-rails', '~> 3.2.2' 
     gem 'uglifier', '>= 1.0.3' 
    gem 'therubyracer', '~> 0.12.0' 
end 

내 Gemfile의 therubyracer 부분과 여기가 중단 곳 20분

** [out :: 198.58.99.7] Installing libv8 (3.16.14.3)

어떤 제안은 ~에 대한입니까? 새로운 사이트를 구축하는 데 오랜 시간이 걸리는 것에 지쳤습니다.

+0

"새로운 사이트 배포"의 의미를 모르십니까? 내가 이해할 수있는 한, Capistrano는 보석을 설치할 때'--deployment' 번들러 플래그를 사용한다. 그리고 이것은 보석을'your_app/shared/bundle /'에 설치하는 것을 말해 준다. 그것은 모든 것을 위해 다르다는 것을 의미한다. 새로운 배치. –

+0

괜찮 았나? (새로운 Rails 사이트마다 libv8을 컴파일하는 대신에) 젬의 머신 버전을 사용하는 방법을 알고 있습니까? – creativereason

답변

1

나는 (카피 스트라 노가하는 같은) your_app/shared/bundle에 보석을 설치하는 --deployment 플래그 내 댓글, bundle에서 말했듯이. 이러한 격리 및 위치 지정의 이유 중 하나는 배포하는 사용자가 보석을 시스템 위치에 설치할 수있는 권한이 없기 때문이며 더 많은 이유는 here (응용 프로그램 배포 제목 아래에 있음)입니다.

번들러가 시스템 젬을 사용하도록하는 방법이 있다고 생각합니다. 그러나 직접 체험 할 필요는 없습니다. here을 참조하십시오.

0

Gemfile의 종속성이 충돌했을 수 있습니다.

Gemfile에서 therubyracer의 버전 제약 조건을 제거하면 번들링이 훨씬 빨라야합니다.

gem 'therubyracer' 
+0

맥스, 답장을 보내 주셔서 감사합니다. 이전에는 사이트에 어제 버전이 없었기 때문에 불행히도 여전히 동일한 문제가있었습니다. 다른 제안? – creativereason

+0

이 답변을보십시오 : http://stackoverflow.com/questions/8126465/bundle-install-update-libv8-therubyracer-installation-fails-with-native-ex –