2012-10-19 57 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"] 
}