[英]Capistrano Deploying to vagrant box fails to authenticate
我正在尝试将安装程序升级到v3,并且遇到调试时遇到问题。 我使用无业游民来测试我的小型应用程序的暂存环境。 这是我的config/deploy/staging.rb
文件的样子:
set :user, "vagrant"
set :stage, :staging
set :ssh_options, {
keys: %w(~/.vagrant.d/insecure_private_key),
forward_agent: true
}
role :all, "192.168.33.101", primary: true
set :domain_name, "domain.local"
这是我的deploy:setup
命令,用于测试:
namespace :deploy do
desc 'Setup the application (NO-OP Hook)'
task :setup do
on roles(:app) do
execute :echo, :uptime
end
end
end
尝试做任何事情时,甚至只是获得uptime
,这都是我得到的错误:
$ cap staging deploy:setup --trace
** Invoke staging (first_time)
** Execute staging
** Invoke load:defaults (first_time)
** Execute load:defaults
** Invoke deploy:setup (first_time)
** Execute deploy:setup
INFO [5cf8fd6d] Running /usr/bin/env echo uptime on 192.168.33.101
cap aborted!
Net::SSH::AuthenticationFailed
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/net-ssh-2.7.0/lib/net/ssh.rb:215:in `start'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:156:in `ssh'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:109:in `block in _execute'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:106:in `tap'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:106:in `_execute'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:54:in `execute'
/Users/mbridges/code/github.com/mattdbridges/cornerstone/config/deploy.rb:24:in `block (3 levels) in <top (required)>'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:42:in `instance_exec'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/backends/netssh.rb:42:in `run'
/Users/mbridges/.rbenv/versions/2.0.0-p195/lib/ruby/gems/2.0.0/gems/sshkit-1.0.0/lib/sshkit/runners/parallel.rb:12:in `block (2 levels) in execute'
Tasks: TOP => deploy:setup
升级之前,我能够通过身份验证。 有任何想法吗?
事实证明,这与Vagrant IP地址和端口配置有关。
一个简单的变化
# Old
role :all, "192.168.33.101", primary: true
# New
server "vagrant@localhost:2222", roles: %w[web app db], primary: true
至少对于我来说,这解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.