2012-04-15 7 views
0

Mein Vorarbeiter Juwel lädt nicht alle meine Dienste. Das ist mein procfile:Rails Service Management in Entwicklung? (Vorarbeiter startet nicht alle Dienste)

search: redis-server 
search: bundle exec rake resque:start &&> log/resque_worker_queue.log 
search: bundle exec rackup private_pub.ru -s thin -E production & &> log/private_pub.log 
search: bundle exec rake sunspot:solr:run 

Ist es möglich, dieses Problem zu beheben Oder soll ich GOD Juwel noch besser im Entwicklungsmodus verwenden?

Antwort

2

Die Prozesstypen müssen alle eindeutige Namen haben. Es erscheint von Ihrem Procfile, dass Sie alle Prozesse search benannt haben. Versuchen Sie Folgendes als procfile:

redis: redis-server 
worker: bundle exec rake resque:start &&> log/resque_worker_queue.log 
web: bundle exec rackup private_pub.ru -s thin -E production & &> log/private_pub.log 
solr: bundle exec rake sunspot:solr:run 
+0

Ok versucht dies am Ende habe ich immer noch Probleme mit Dienstleistungen nicht funktioniert so nicht sicher, das ist wirklich eine 100% ige Lösung. – Rubytastic

0

Sie müssen mehr Details angeben, auf welchen Dienste nicht geladen und was der Fehler/console ausgegeben wird.

Das Problem ist sehr wahrscheinlich, dass Sie die Prozesse im Hintergrund starten (mit der & Option) und Vorarbeiter nicht dieses (siehe this wiki page unterstützen. Darüber hinaus ist es besser (für die Entwicklung zumindest) nicht des umleiten Ausgabe in Protokolldateien - Vorarbeiter Griffe für Sie die Log-Ausgabe in einer schönen Weise

ich glaube, Sie können auch resque:work statt resque:start

Sie versuchen, diese nutzen müssen:

redis: redis-server 
worker: QUEUE=* bundle exec rake resque:work 
web: bundle exec rackup private_pub.ru -s thin -E production 
solr: bundle exec rake sunspot:solr:run 
..

Wenn einige davon immer noch nicht funktionieren, überprüfen Sie, ob die Befehle funktionieren, wenn Sie sie direkt in der Konsole verwenden und sie im Vordergrund bleiben.