2013-10-11 15 views
14

Tôi đã cài đặt capistrano với gem capistranoray capistrano triển khai lỗi

Và trong thư mục ứng dụng của tôi cài đặt cap install

lệnh này bao gồm deploy/production.rbdeploy/staging.rb và trong config/deploy.rb

tập tin production.rb tôi đã sau

set :stage, :production 
role :all, %w{[email protected]} 
server 'sub.mydomain.com', user: 'deploy', roles: %w{web app}, my_property: :my_value 
set :ssh_options, { :forward_agent => true, :port => 1754, :keys => %w(/home/seting/.ssh/id_rsa) } 

Và đây là deploy.rb tôi

set :application, 'admin' 
set :repo_url, '[email protected]:username/myadmin.git' 
namespace :deploy do 

    desc 'Restart application' 
    task :restart do 
    on roles(:app), in: :sequence, wait: 5 do 
     # Your restart mechanism here, for example: 
     # execute :touch, release_path.join('tmp/restart.txt') 
    end 
    end 

    after :restart, :clear_cache do 
    on roles(:web), in: :groups, limit: 3, wait: 10 do 
     # Here we can do anything such as: 
     # within release_path do 
     # execute :rake, 'cache:clear' 
     # end 
    end 
    end 

    after :finishing, 'deploy:cleanup' 

end 

Và cuối cùng khi tôi chạy cap production deploy

Bắt lỗi như

cap aborted! 
seting 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/net-ssh-2.7.0/lib/net/ssh.rb:215:in `start' 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:156:in `ssh' 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:68:in `upload!' 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/capistrano-3.0.0/lib/capistrano/tasks/git.rake:11:in `block (3 levels) in <top (required)>' 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:42:in `instance_exec' 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:42:in `run' 
/home/seting/.rvm/gems/ruby-2.0.0-p247/gems/sshkit-1.0.0/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute' 
Tasks: TOP => git:check => git:wrapper 
(See full trace by running task with --trace) 

Edit - 1

Bên cạnh đó tôi đã không thực hiện bất kỳ cài đặt đặc biệt nào trong máy chủ của tôi để chạy ứng dụng đường ray. Tôi đã quyết định chuyển tệp của mình sang máy chủ trước. Có đúng không?

+0

Bạn đã chạy 'triển khai sản xuất giới hạn: thiết lập' chưa? Điều đó có hiệu quả hay không? – CDub

+0

nhận lỗi là 'Không biết cách triển khai tác vụ' triển khai: setup'' – overflow

+0

Cho dù tôi có phải định cấu hình bất kỳ điều gì khác trong máy chủ của mình hoặc trong git – overflow

Trả lời

12

Bạn nên đặt tên vai trò triển khai thay vì đặt hoặc theo cách khác.

set :stage, :production 
set :branch, 'master' 
set :deploy_to, '/srv/www/server.com/' 
role :all, %w{[email protected]} 
server 'server.com', user: 'deploy', roles: %w{web app}, my_property: :my_value 
fetch(:default_env).merge!(rails_env: :production) 

Đây là guide

Và có thể bạn muốn chạy

cap production deploy:check 

để kiểm tra cấu hình của bạn.

Cũng không có triển khai: thiết lập trong capistrano 3.0

+2

Một điểm tuyệt vời. Tôi nhớ rằng anh ta đang sử dụng 3.0. Cú bắt tuyệt vời. – CDub

+1

Tôi đã thử liên kết ở trên mà bạn đưa ra nhưng phải đối mặt với cùng một vấn đề. Bạn có thể giúp tôi không. – overflow

+0

cách thực hiện thiết lập trên máy chủ? bằng tay? không có nhiệm vụ để làm mkdir cho cấu trúc thư mục cần thiết? –

Các vấn đề liên quan