Question

J'ai les tâches suivantes dans mon déploiement.rb

namespace :unicorn do
  desc "stop unicorn"
  task :stop, :roles => :app, :except => { :no_release => true } do
    run "#{try_sudo} kill `cat #{unicorn_pid}`"
  end 
  desc "start unicorn"
  task :start, :roles => :app, :except => { :no_release => true } do
    run "cd #{current_path} && #{try_sudo} unicorn -c #{current_path}/config/unicorn.rb -E #{rails_env} -D"
  end
  task :reload, :roles => :app, :except => { :no_release => true } do
    run "#{try_sudo} kill -s USR2 `cat #{unicorn_pid}`"
  end

  after "deploy:restart", "unicorn:reload"
end

Quand je cours Unicorne: commencer ou Unicorne: Recharger Tâches de ma machine de développement Tout semble bien sur le serveur:

$ ps aux | grep unicorn
myuser   8196 77.9 12.2  81020 62748 ?        Sl   19:18   0:14 unicorn master -c /home/myuser/www/myapp/current/config/unicorn.rb -E production -D                                                                                       
myuser   8216  0.0 11.5  81020 59232 ?        Sl   19:18   0:00 unicorn worker[0] -c /home/myuser/www/myapp/current/config/unicorn.rb -E production -D

Cependant, quand je lance un plein déploiement de capuchon J'obtiens plusieurs instances du serveur Unicorn, qui confond l'enfer de Nginx.

$ ps aux | grep unicorn
myuser   8196  4.4 12.2  81020 62764 ?        Sl   19:18   0:14 unicorn master (old) -c /home/myuser/www/myapp/current/config/unicorn.rb -E production -D                                                                                 
myuser   8216  1.1 13.2  87868 67764 ?        Sl   19:18   0:03 unicorn worker[0] -c /home/myuser/www/myapp/current/config/unicorn.rb -E production -D                                                                                    
myuser   8362  5.8 12.8  83448 65408 ?        Sl   19:19   0:16 unicorn master -c /home/myuser/www/myapp/current/config/unicorn.rb -E production -D                                                                                       
myuser   8385  0.0 12.1  83712 61980 ?        Sl   19:19   0:00 unicorn worker[0] -c /home/myuser/www/myapp/current/config/unicorn.rb -E production -D

Je ne sais pas pourquoi Unicorne: Recharger Termine ces instances en double sur le déploiement. Apparemment, cela n'arrête pas le maître / travailleur précédent. Je dois exécuter le Unicorne: Arrêtez tâche deux fois alors Unicorne: commencer encore pour rectifier le problème

Quelqu'un d'autre a rencontré ça? Je lui ai poussé depuis des heures sans aucune chance

Était-ce utile?

La solution

Il semble donc que le problème était une installation de licorne défectueuse. J'ai mis mes joyaux et les rebondissements et maintenant tout est doux. La version Unicorn est la même, donc c'est toujours un peu mystère mais au moins ça marche maintenant

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top