2011-12-24 23 views
10

Patrząc na logi, moja aplikacja cedrowa działa obecnie webrick. Oczywiście nie jest to najlepszy wybór dla aplikacji produkcyjnej.Heroku, Cienki i wszystko pomiędzy

Jak wspomniano w całym Internecie, powinienem używać Thin webserver.

Ale nadal chciałbym użyć prostoty z Webrick na mojej maszynie programistycznej (Windows).

Jak zauważył w komentarzach na Heroku cedar stack, thin and eventmachine wersji, które mogą być zainstalowane w systemie Windows do eventmachine (ja też potrzebuję trochę wyjaśnień na ten gem) jest 1.0.0.beta4 i Heroku nie tak ..

  1. Jak zainstalować cienki (i eventmachine chyba) tylko na heroku i utrzymywać webrick dla wszystkich moich potrzeb localhost?

  2. Co to jest eventmachine i dlaczego go potrzebuję?

  3. Czy istnieje sposób, aby wyraźnie powiedzieć Heroku, aby zignorować to, co chcę i używać cienki?

+1

Aby korzystać cienki tylko w produkcji trzeba będzie zadeklarować to w Gemfile 'Grupa: Produkcja temat; klejnot "cienki"; end' i umieść to w Procfile: 'web: bundle exec rails server thin -p $ PORT' jak opisano w http://devcenter.heroku.com/articles/rails3 – taro

+0

Heroku [poleca Unicorn] (https: // devcenter. heroku.com/articles/getting-started-with-rails4#webserver) dla aplikacji produkcyjnych teraz – Yarin

Odpowiedz

31

w twojej Gemfile, utworzyć lub zmienić grupę production zawierać thin:

group :production do 
    gem 'thin' 
end 

Następnie w Procfile (plik o nazwie Procfile umieszczony w katalogu głównym aplikacji), powiedz Heroku chcesz użyć thin, tak jak:

web: bundle exec thin start -p $PORT 

To pozwoli ci nadal korzystać z Webrick w twoim lokalnym środowisku programistycznym podczas pracy z thin w produkcji na Heroku.

+0

Robię dokładnie to samo, z Rails '3.2.21', ale mówi:' bundler: nie udało się załadować polecenia: cienki (/app/vendor/bundle/ruby/2.2.0/bin/thin) ' –

0

Aby pominąć instalację thin gem na lokalnym komputerze, zadzwoń Bundler tak:

bundle install --without production 
Powiązane problemy