3
如果我想忍受部署後手動停止和啓動獨角獸造成的停機時間,應用部署會很好。但是,我想使用零宕機時間獨角獸設置,但它不起作用,因爲啓動的新獨角獸進程正在查看舊的部署發佈路徑。沒什麼特別的,簡單的蓋重啓,deploy.rb:Unicorn + Capistrano零停機部署 - 未切換到新版本
desc "Zero-downtime restart of Unicorn"
task :restart, :except => { :no_release => true } do
run "cd #{current_path}; #{try_sudo} kill -s USR2 `cat /var/www/appname/shared/pids/unicorn.pid`"
end
我知道它在尋找錯誤的目錄,因爲如果意見不改變,如果我設置keep_releases
1或2,麒麟日誌將顯示一個錯誤,因爲它試圖啓動目錄被刪除:
/var/www/appname/shared/bundle/ruby/1.9.1/gems/unicorn-4.4.0/lib/unicorn/http_server.rb:425:in `chdir': No such file or directory - /var/www/appname/releases/20130330104246 (Errno::ENOENT)
我一直在努力,現在打開和關閉調試這幾個星期。任何幫助得到這個工作非常感謝!