卡普斯特拉诺部署:冷不起作用

人气:499 发布:2022-10-16 标签: deployment ruby-on-rails setup-deployment passenger capistrano

问题描述

我有两个问题。一个小问题,一个大问题。

为什么我必须输入10倍于跑步上限的密码:冷

在我尝试通过teachmetocode-tutal设置Capstrano之后 在堆栈溢出的帮助下。我坐了下来,阅读了许多部署Capstrano的教程,并编写了我自己的部署.rb的新版本 我们的创业板环境输出看起来非常

RubyGems环境:

RUBYGEMS版本:1.8.15 Ruby版本:1.9.3(2012-02-16补丁级别125)[x86_64-Linux] 安装目录:/home/user/.rvm/gems/ruby-1.9.3-p125@myapp Ruby可执行文件:/home/user/.rvm/rubies/ruby-1.9.3-p125/bin/ruby 可执行目录:/home/user/.rvm/gems/ruby-1.9.3-p125@myapp/bin RUBYGEMS平台: 拼音 x86_64-Linux 宝石路径: /home/user/.rvm/gems/ruby-1.9.3-p125@myapp /home/user/.rvm/gems/ruby-1.9.3-p125@global GEM配置: :UPDATE_SOURCES=>true :Verbose=>True :Benchmark=>FALSE :Backtrace=>False :Bulk_Threshold=>1000 远程来源: http://rubygems.org/

我们的部署.rb在这里

require "bundler/capistrano"
set :application, "myapp"
set :repository,  "#{application}@myserver:/home/git/repos/#{application}.git"
set :scm, :git
set :user, "#{application}"
set :use_sudo, false
set :deploy_to, "/home/#{application}/#{application}"
set :deploy_via, :remote_cache
set :keep_releases, 5

server "myserver", :app, :web, :db, :primary => true

set :branch, "master"

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

before "deploy:assets:precompile", "bundle:install"

load 'deploy/assets'

namespace :deploy do
 task :start do ; end
 task :stop do ; end
 task :restart, :roles => :app, :except => { :no_release => true } do
   run "touch #{File.join(current_path,'tmp','restart.txt')}"
 end
end
我们的开发设置 我们使用的是ApachePassagner和http://beginrescueend.com/rvm/install/的RVM安装。 在服务器上,我们以相同的方式安装它。每个用户(app、geset或realuser)都必须是RVM组的成员...我们用摩德勒来安装过路人。 http://www.modrails.com/documentation/Users%20guide%20Apache.html#_installing_via_the_gem

但当我使用cap deploy:cold时,为什么会出现错误。说cap deploy:check 错误在此处

 triggering after callbacks for `deploy:finalize_update'
  * executing `bundle:install'
  * executing "ls -x /home/myapp/myapp/releases"
    servers: ["myserver"]
    [myserver] executing command
    [myserver] sh -c 'ls -x /home/myapp/myapp/releases'
    command finished in 82ms
  * executing "cd /home/myapp/myapp/releases/20120331143114 && bundle install --gemfile /home/myapp/myapp/releases/20120331143114/Gemfile --path /home/m
ahaloo/myapp/shared/bundle --deployment --quiet --without development test"
    servers: ["myserver"]
    [myserver] executing command
    [myserver] sh -c 'cd /home/myapp/myapp/releases/20120331143114 && bundle install --gemfile /home/myapp/myapp/releases/20120331143114/Gemfile --path /h
ome/myapp/myapp/shared/bundle --deployment --quiet --without development test'
 ** [out :: myserver] sh: bundle: not found
    command finished in 73ms
*** [deploy:update_code] rolling back
  * executing "rm -rf /home/myapp/myapp/releases/20120331143114; true"
    servers: ["myserver"]
    [myserver] executing command
    [myserver] sh -c 'rm -rf /home/myapp/myapp/releases/20120331143114; true'
    command finished in 171ms
failed: "sh -c 'cd /home/myapp/myapp/releases/20120331143114 && bundle install --gemfile /home/myapp/myapp/releases/20120331143114/Gemfile --path /home/
myapp/myapp/shared/bundle --deployment --quiet --without development test'" on myserver
marcus@lenny:~/dev/workspace/myapp$

我们的bundle list在这里

 * actionmailer (3.2.0)
 * actionpack (3.2.0)
 * activemodel (3.2.0)
 * activerecord (3.2.0)
 * activeresource (3.2.0)
 * activesupport (3.2.0)
 * arel (3.0.2)
 * builder (3.0.0)
 * bundler (1.1.1)
 * capistrano (2.11.2)
 * coffee-rails (3.2.1)
 * coffee-script (2.2.0)
 * coffee-script-source (1.2.0)
 * erubis (2.7.0)
 * execjs (1.3.0)
 * highline (1.6.11)
 * hike (1.2.1)
 * i18n (0.6.0)
 * journey (1.0.3)
 * jquery-rails (1.0.17)
 * json (1.6.5)
 * libv8 (3.3.10.4)
 * mail (2.4.4)
 * mime-types (1.17.2)
 * multi_json (1.1.0)
 * net-scp (1.0.4)
 * net-sftp (2.0.5)
 * net-ssh (2.3.0)
 * net-ssh-gateway (1.1.0)
 * polyglot (0.3.3)
 * rack (1.4.1)
 * rack-cache (1.2)
 * rack-ssl (1.3.2)
 * rack-test (0.6.1)
 * rails (3.2.0)
 * railties (3.2.0)
 * rake (0.9.2.2)
 * rdoc (3.12)
 * sass (3.1.15)
 * sass-rails (3.2.0)
 * simple_form (2.0.1)
 * sprockets (2.1.2)
 * sqlite3 (1.3.5)
 * therubyracer (0.9.10)
 * thor (0.14.6)
 * tilt (1.3.3)
 * treetop (1.4.10)
 * tzinfo (0.3.32)
 * uglifier (1.2.3)
 * uuidtools (2.1.2)

有没有人能帮我们找一台可以工作的卡斯特拉诺

推荐答案

通过执行Cap Shell,然后执行ECHO$PATH来检查Capstrano路径。您可能会看到标准的/usr/local/bin和/usr/bin,但这不是RVM拥有绑定程序的地方

编辑您的Capstrano配置/ploy.rb文件,并添加以下行:

# Add RVM's lib directory to the load path.
$:.unshift(File.expand_path('./lib', ENV['rvm_path']))

# Load RVM's capistrano plugin.    
require "rvm/capistrano"

set :rvm_ruby_string, '1.9.2'
set :rvm_type, :user  # Don't use system-wide RVM

Rails 3 -- Bundler/Capistrano Errors

819