2012-05-15 6 views
1

레일 3 앱 "SaaS"를 제작해야합니다. 멀티 테넌시/데이터 분리 등 다른 의견이 있다는 것을 알고 있습니다. 현재는 "총 데이터 분리"옵션을 사용할 것입니다. 각 가입시 새 Heroku 앱을 실행합니다. mydomain.com 및 www.mydomain.com에 시작 페이지가 있습니다. 나는 또한 Zerigo에서 * CNY 항목을 * .mydomain.com proxy.heroku.com (Heroku 메쉬) 가리키는 있습니다. 나는이 링크를 통해서도 갔다 - Ruby on Rails: how to design a SaaS infrastructure?. 나의 요구 사항은 이것과 거의 동일하다. 나는 다음과 같은 작업을 수행해야 이해 때 SaaS를위한 새로운 사용자가 로그인 업 -SaaS 기반의 레일 3 애플리케이션

  1. 선택 응용 프로그램 이름 : app-name.mydomain.com
  2. 사용자 이름/암호/역할 (선택 사항) 및 가격 옵션
  3. 그런 다음 새로운 Heroku가 인스턴스에 코드를 배포 (하고 https://github.com/darkbushido/heroku-rails-saas에 의해 반복적 인 Heroku가 작업을 단순화 할 수있다)
  4. 는 Heroku가 도메인을 추가 :
  5. 사용 Heroku가의 설정을 .mydomain.com을 추가 : 단계 2에서 선택을 추가하려면 추가

모두 괜찮아 보입니다. 그러나 문제는 프로세스를 자동화 할 수 있는가하는 것입니다. http://rubydoc.info/gems/s에 관련 보석 몇 개를 보았지만 확실하지는 않습니다. 어떤 제안이 굉장 할 것입니다.

감사

답변

0

내가이 자동화 할 수해서는 안 이유가 표시되지 않습니다. 그것은 백그라운드 작업 (사용자가 가입 한 경우)에서 수행 될 수 있습니다. 그 직업에서 당신은 영웅의 보석을 사용할 수 있습니다. 전화 할 수있는 방법을 보려면 https://github.com/heroku/heroku/blob/master/lib/heroku/client.rb을보십시오.

require "heroku" 
heroku = Heroku::Client.new("[email protected]", "password") 

# List all heroku apps 
heroku.list.each do |app| 
    puts app[0] 
end 

나는이 도움이 되었으면 좋겠 :

다음은 계정에 대한 모든 Heroku가 응용 프로그램을 나열하는 예입니다!

+0

감사합니다. API로 새 Heroku 앱을 만들 수 있지만 (이미 해왔습니다.) Heroku에있는 자체 출시 앱 (www.mydomain.com)에서 BitBucket 또는 GitHub의 코드를 푸는 방법은 없습니다. 읽기 전용 파일 시스템. 나는 제 3자를 BitBucket에서 끌어 와서 새롭게 작성된 Heroku-app (API에 의해)의 저장소에 푸시해야한다. – dbose

+0

나는 완벽하지는 않지만 내 목적을 달성 할 수있는 아파트 보석으로 가서 문제를 해결했습니다. 귀하의 답변에 고마워요. – dbose