我继承了一个在Linode上托管的Rails项目.
之前的开发人员使用BitBucket存储库以及Capistrano进行部署.
我已经在GitHub上设置了一个私有存储库,我正试图让Capistrano配方工作.我没有运气.我在部署期间继续收到publickey错误.
以下是我采取的步骤 -
ssh_options[:forward_agent]设置为true在Capfilessh-add命令,以确保为auth代理添加了身份ssh -T git@github.com确认ssh在当地正确设置ssh -T git@github.com以确保它也正常工作另外,为了防止forward_agent属性不起作用,我甚至尝试在Linode服务器上生成SSH密钥,并将其添加到GitHub.没运气.
完成所有这些后,当我运行时cap deploy,我收到以下错误:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
以下是我正在使用的食谱 -
require "bundler/capistrano"
server "----SERVER IP----", :web, :app, :db, primary: true
set :application, "blog"
set :user, "deployer"
set :deploy_to, "/var/www/blog"
set :deploy_via, :remote_cache
set :use_sudo, false
set :scm, "git"
set :repository, "git@github.com:--MY USERNAME--/blog.git"
set :branch, "master"
default_run_options[:pty] = true
ssh_options[:forward_agent] …Run Code Online (Sandbox Code Playgroud)