Capistrano失败部署 [英] deploy with capistrano failing

查看:63
本文介绍了Capistrano失败部署的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这样的capistrano玩具

I have a capistrano taks like this

require "bundler/capistrano"

set :application, "cloudoc"
set :repository,  "git@github.com:luizkowalski/cloudoc.git"

set :scm, :git

role :web, "xx.xx.xx.xxx" 
role :app, "xx.xx.xx.xxx" 
role :db,  "xx.xx.xx.xxx", :primary => true

default_run_options[:pty] = true
ssh_options[:forward_agent] = true

after "deploy:restart", "deploy:cleanup"

set :user, "deploy"
set :use_sudo, true

set :deploy_to, "/home/deploy"
set :deploy_via, :remote_cache

role :web, "xx.xx.xx.xxx"
role :app, "xx.xx.xx.xxx"
role :db, "xx.xx.xx.xxx", :primary => true

上限部署之后输出。

由于某种原因,他失败了,我不知道为什么。我已经尝试过使用use_sudo false和root,发生同样的事情。

after the cap deploy this is the output.
for some reason, he fails and I don't know why. I've tried with use_sudo false and with root, same thing happen.

    [xx.xx.xx.xxx] executing command
    command finished in 4714ms
    copying the cached version to /home/deploy/releases/20120809223144
  * executing "cp -RPp /home/deploy/shared/cached-copy /home/deploy/releases/20120809223144 && (echo 61eeff328c40e104962f96bf6ffc5150bd1162e4 > /home/deploy/releases/20120809223144/REVISION)"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 604ms
  * executing `deploy:finalize_update'
    triggering before callbacks for `deploy:finalize_update'
  * executing `deploy:assets:symlink'
  * executing "rm -rf /home/deploy/releases/20120809223144/public/assets &&\\\n        mkdir -p /home/deploy/releases/20120809223144/public &&\\\n        mkdir -p /home/deploy/shared/assets &&\\\n        ln -s /home/deploy/shared/assets /home/deploy/releases/20120809223144/public/assets"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 544ms
  * executing `bundle:install'
  * executing "cd /home/deploy/releases/20120809223144 && bundle install --gemfile /home/deploy/releases/20120809223144/Gemfile --path /home/deploy/shared/bundle --deployment --quiet --without development test"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 1990ms
  * executing "chmod -R g+w /home/deploy/releases/20120809223144"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 1042ms
  * executing "rm -rf /home/deploy/releases/20120809223144/log /home/deploy/releases/20120809223144/public/system /home/deploy/releases/20120809223144/tmp/pids &&\\\n      mkdir -p /home/deploy/releases/20120809223144/public &&\\\n      mkdir -p /home/deploy/releases/20120809223144/tmp"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 534ms
  * executing "ln -s /home/deploy/shared/system /home/deploy/releases/20120809223144/public/system"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 517ms
  * executing "ln -s /home/deploy/shared/log /home/deploy/releases/20120809223144/log"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 519ms
  * executing "ln -s /home/deploy/shared/pids /home/deploy/releases/20120809223144/tmp/pids"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 521ms
    triggering after callbacks for `deploy:update_code'
  * executing `deploy:assets:precompile'
  * executing "cd /home/deploy/releases/20120809223144 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
 ** [out :: xx.xx.xx.xxx] Compiled jquery.js  (2ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled jquery_ujs.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-transition.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-alert.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-modal.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-dropdown.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-scrollspy.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-tab.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-tooltip.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-popover.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-button.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-collapse.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-carousel.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap/bootstrap-typeahead.js  (0ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled twitter/bootstrap.js  (247ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled ios-checkboxes/ios-checkboxes.js  (20642ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled ios-checkboxes.js  (22403ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled rails.validations.js  (418ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled best_in_place.js  (327ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled autosize.js  (76ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled bootstrap.js  (5870ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled dashboard.js  (1388ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled documents.js  (896ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled home.js  (377ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled sessions.js  (563ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Compiled application.js  (51370ms)  (pid 1075)
 ** [out :: xx.xx.xx.xxx] Killed
    command finished in 68972ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/deploy/releases/20120809223144; true"
    servers: ["xx.xx.xx.xxx"]
    [xx.xx.xx.xxx] executing command
    command finished in 612ms
failed: "sh -c 'cd /home/deploy/releases/20120809223144 && bundle exec rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile'" on xx.xx.xx.xxx

有什么想法吗?

如果有人需要更多信息,请让我知道

提前谢谢

any ideas?
if someone needs more info, please let me know
Thanks in advance

推荐答案

当RAM不足且进程占用大量RAM时,内核会主动终止进程。您可以使用 dmesg 查看进程是否被内核终止。这样的消息将出现:

The kernel actively kills processes when RAM is short and processes use to much RAM. You can use dmesg to look if the process got killed by the kernel. Messages like this will appear:

[ 3380.091822] Out of memory: Kill process 1075 (ruby1.9.1) score 382 or sacrifice child

您可以激活交换空间或关闭其他进程。如果您在VPS上运行,请确保您有足够的可用内存。最简单的解决方案-如果问题确实是免费内存不足-仅购买更多内存。

You can activate swap space or shut down other processes. If you are running on a VPS, please make sure you have enough RAM available. The simplest solution - if the problems is really a shortage of free RAM - is just buy more RAM.

这篇关于Capistrano失败部署的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆