我有像这样的capistrano
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
在cap deploy
这是输出之后
出于某种原因,他失败了,我不知道为什么。我尝试过使用use_sudo false和root,同样的事情发生了。
[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
任何想法?
如果有人需要更多信息,请告诉我
提前致谢
答案 0 :(得分:18)
当RAM很短并且进程使用大量RAM时,内核会主动杀死进程。您可以使用dmesg
查看进程是否被内核杀死。这样的消息将出现:
[ 3380.091822] Out of memory: Kill process 1075 (ruby1.9.1) score 382 or sacrifice child
您可以激活交换空间或关闭其他进程。如果您在VPS上运行,请确保您有足够的RAM可用。最简单的解决方案 - 如果问题实际上是免费RAM的短缺 - 就是购买更多内存。
答案 1 :(得分:8)
我在Digital Ocean上运行我的rails应用程序。创建一个2GB的交换似乎解决了这个问题。
答案 2 :(得分:1)
如果您使用的是亚马逊EC2微型实例,请尝试删除应用程序的旧版本,然后重新启动服务器实例。这对我有用。 cap deploy:清理 cap rubber:reboot
答案 3 :(得分:0)
我遇到了这个错误并意识到我存储了以前的所有版本。我只是使用cap deploy:cleanup
而且效果很好。