2014-03-03 3 views
0

Capistrano를 사용하여 Apache 및 Passenger 4 서버에 여러 개의 Rails 응용 프로그램을 배포하고 있습니다. 또한 rvm-capistrano gem을 사용하여 새로운 버전의 Ruby를 서버에 설치합니다.PassistRuby 경로를 Capistrano에서 설정하십시오.

내가 알고 있듯이 각 VirtualHost 정의 내의 PassengerRuby 줄은 각 응용 프로그램에 사용해야하는 Ruby와 gemset을 지정합니다. Ruby 1.9.3-p374에서 Ruby 1.9.3-p545로 앱을 업그레이드 할 때이 VirtualHost 정의를 새 버전의 Ruby를 가리 키도록 변경해야합니다. 맞습니까?

Capistrano가 앱을 배포 할 때 더 자동적으로이 작업을 수행 할 수있는 방법이 있습니까? Apache 설정 파일을 어떤 식 으로든 변경하거나 Ruby 경로를 정의하여 Capistrano가 변경할 수있는 다른 설정을 간접적으로 가리킬 수 있습니다. 어떻게해야합니까?

답변

1

여객 구성 파일을 관리하기위한 요리법을 쓸 것입니다. 제조법

  • 가 ERB 템플릿을 사용하는 조리법을 쓰기 실행되는 시간에 교체 할 ERB 스크립트 태그와 동적 변수를 대체

    1. 이 설정 파일의 ERB 버전을 만들고 다음과 같이 기본 패턴이다 http://railscasts.com/episodes/337-capistrano-recipes?view=asciicast

      :이 패턴이 RailsCast 정말 잘 설명되어 rvm:whatever_task_you_use_to_install_upgrade

    당신의 루비 업그레이드 작업 후 서버에

  • 콜이 조리법을 결과 파일을 업로드

    또는 여객을 설치하고 관리하기위한 모자 조리법이 꽤 많이 있습니다. 다음은 erb를 사용하지 않고, 여객 설정 (39 행 참조)에 쓰여지는 인라인 텍스트입니다. https://github.com/nesquena/cap-recipes/blob/master/lib/cap_recipes/tasks/passenger/install.rb

  • 관련 문제