Birden çok kullanıcının dağıtabilmesi için raylar uygulamasının capistrano dağıtımını gerçekleştirme konusunda bir sorun yaşıyorum. Başlangıçta, dağıtımı yapacak kullanıcı tarafından sahip olunan/tmp altındaki tek boynuzlu sunucu için bir soket vardı. Bu, dosyayı değiştirmek için izinlere sahip olmayacakları için birden fazla kullanıcıyla çalışmaz.Çok kullanıcılı Capistrano dağıtımı için Unicorn ayarlama
Soket dosyasını uygulama altında tmp dizinine yerleştirdiğimiz ikinci bir yaklaşım denedik. Her dağıtımdan sonra, soket dosyasının sahipliğini, kullanıcılar arasında paylaşılan dağıtıcı grubu grubuna sıfırlarız. Bu, bir kullanıcı tarafından ilk dağıtım için çalışır, ancak aynı kullanıcı bir satırda ikinci bir dağıtım yaptıysa olmaz. Farklı bir kullanıcı dağıtırsa, iyi çalışır.
Temel olarak, her bir kişinin başka bir kişiyi aralarında konuşlandırmasını istemek zorunda kalmadan önce her defasında yalnızca bir kez dağıtılabileceği bir dağıtım sistemi ile sonuçlandık. İkinci ve daha fazla dağıtılmış gibi görünüyor, tek boynuzlu at süreçleri düzgün yeniden başlatılmıyor.
INFO -- : executing ["/var/www/dashboard/shared/bundle/ruby/2.1.0/bin/unicorn", "-c", "/var/www/dashboard/current/config/unicorn/production.rb", "-E ", "deployment", "-D", {11=>#<Kgio::UNIXServer:/var/www/dashboard/current/tmp/dashboard.socket>}] (in /var/www/dashboard/releases/20160405234438)
INFO -- : forked child re-executing...
INFO -- : inherited addr=/var/www/dashboard/current/tmp/dashboard.socket fd=11
INFO -- : Refreshing Gem list
INFO -- : reaped #<Process::Status: pid 22939 exit 0> worker=0
INFO -- : reaped #<Process::Status: pid 22942 exit 0> worker=1
INFO -- : reaped #<Process::Status: pid 22945 exit 0> worker=2
INFO -- : reaped #<Process::Status: pid 22948 exit 0> worker=3
INFO -- : master complete
INFO -- : worker=0 ready
INFO -- : worker=1 ready
INFO -- : worker=2 ready
INFO -- : master process ready
INFO -- : worker=3 ready
bizim tek boynuzlu at dağıtım için kullandığınız mücevher capistrano geçerli: İkinci başarısız günlük şöyle dağıtan On
INFO -- : Refreshing Gem list
INFO -- : listening on addr=/var/www/dashboard/current/tmp/dashboard.socket fd=11
INFO -- : worker=0 ready
INFO -- : worker=1 ready
INFO -- : worker=2 ready
INFO -- : master process ready
INFO -- : worker=3 ready
: İlk başarılı dağıtmak için tek boynuzlu günlüğünü dağıtmak bu gösteriyor -unicorn. Ruby 2.1.5, capistrano 2.15.7 ve unicorn 5.0.1 kullanıyoruz.