与Capistrano的部署失败(deploy with capistrano failing)

2019-06-26 22:37发布

我有一个Capistrano的TAKS这样

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虚假和有根,同样的事情发生。

    [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

有任何想法吗?
如果有人需要更多的信息,请让我知道
提前致谢

Answer 1:

内核将主动注销过程时,RAM短,过程中使用到多的内存。 您可以使用dmesg看,如果该进程得到了由内核杀死。 这样的消息会出现:

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

您可以激活交换空间或关闭其他程序。 如果您是在VPS运行时,请确保您有足够的可用RAM。 最简单的办法 - 如果问题真的是免费的RAM不足 - 仅仅是购买更多的RAM。



Answer 2:

我跑在数字海洋我的Rails应用程序。 创建一个2GB的交换似乎解决了问题。



Answer 3:

如果您使用的是亚马逊的EC2实例微尝试删除您的应用程序的旧版本,然后重新启动服务器实例。 这为我工作。 帽部署:清理冠橡胶:重启



Answer 4:

我也陷入了这个错误,才意识到我存储所有我以前释放。 我只是用cap deploy:cleanup和它的工作很大。



文章来源: deploy with capistrano failing