2012-10-19 58 views
22

我们有一个EC2实例,我们的capistrano安装需要ssh。通常通过ssh连接,我使用.pem文件连接到服务器。如何在使用capistrano进行部署时如何利用这个.pem文件?使用pem文件部署与capistrano

回答

31

deploy.rb,设置这些configuraition值:

default_run_options[:pty] = true 
ssh_options[:forward_agent] = true 
ssh_options[:auth_methods] = ["publickey"] 
ssh_options[:keys] = ["/path/to/key.pem"] 
+0

没关系,我有所有这些,但 “公钥” ......所以我现在米得到这个错误:权限被拒绝(公钥)。 致命:远程端意外挂断 *** [deploy:update_code]回滚 –

+0

服务器端是否有公钥? – NARKOZ

+0

在Git服务器上,或者我的代码正在运行的服务器上? –

35

为Capistrano的3语法有些不同

set :pty, true 

set :ssh_options, { 
    forward_agent: true, 
    auth_methods: ["publickey"], 
    keys: ["/path/to/key.pem"] 
}