2013-10-11 16 views
14

Ich habe installiert Capistrano mit gem capistranoSchienen Capistrano Einsatz Fehler

Und in meinem Anwendungsverzeichnis installiert i cap install

Dieser Befehl deploy/production.rb und deploy/staging.rb und in config/deploy.rb

meine production.rb Datei hat folgende

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) } 

Und das ist mein deploy.rb

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 

Und schließlich, wenn ich cap production deploy

Erste Fehler als

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) 

bearbeiten laufen - 1

Außerdem habe ich nicht Führen Sie spezielle Installationen in meinem Server aus, um die Rails-Anwendung auszuführen. Ich habe beschlossen, meine Datei zuerst auf den Server zu verschieben. Ist es richtig?

+0

Haben Sie "Cap-Produktion bereitstellen: Setup" ausgeführt? Funktioniert das oder gibt es denselben Fehler? – CDub

+0

bekommen Fehler als 'weiß nicht, wie man Aufgabe erstellt 'deploy: setup'' – overflow

+0

Ob ich irgendetwas anderes in meinem Server oder in git konfigurieren muss – overflow

Antwort

12

Sie sollten den Rollennamen deploy anstatt setting oder auf andere Weise festlegen.

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) 

Hier ist die guide

Und Sie wollen wahrscheinlich

cap production deploy:check 

überprüfen Sie Ihre Konfiguration laufen.

Es gibt auch keine Bereitstellung: Setup in capistrano 3.0

+2

Ein ausgezeichneter Punkt. Ich habe verpasst, dass er 3.0 benutzt. Großer Fang. – CDub

+1

Ich habe versucht, den obigen Link gegeben, aber mit dem gleichen Problem konfrontiert. Kannst du mir bitte helfen. – overflow

+0

Wie erfolgt die Einrichtung auf dem Server? manuell? Es gibt keine Aufgabe, das mkdir für die erforderliche Ordnerstruktur zu machen? –