2012-01-31 88 views
0

我一直在试图部署一个简单的rails3应用程序从我的mac(os狮子)到亚马逊ec2实例,使用capistrano。当我做了帽部署:安装,我得到一个连接失败:http://ec2-xxx-xx-xx-xxx.compute-1.amazonaws.com/(错误:: ETIMEDOUT:操作超时 - (2)连接)帽部署:设置给出(Errno :: ETIMEDOUT:操作超时 - 连接(2))

这里是我的配置/ deploy.rb

set :application, "paperclip_sample_app" 
set :deploy_to, "/mnt/#{application}" 
set :deploy_via, :copy 
set :scm, :git 
set :repository, "." 

default_run_options[:pty] = true 
set :location, "http://ec2-xxx-xx-xx-xxx.compute-1.amazonaws.com/" 

role :web, location       # Your HTTP server, Apache/etc 
role :app, location       # This may be the same as your `Web` server 
role :db, location, :primary => true # This is where Rails migrations will run 
#role :db, "your slave db-server here" 

set :user, "root" 
ssh_options[:keys] = [File.join(ENV["HOME"], ".ssh", "id_rsa")] 

我也通过转到'系统偏好设置'在mac上启用了ssh。在“互联网&联网”,“共享”图标下,选中“远程登录”选项。

此外,ec2实例上的安全组已启用端口22。结果我能够进入实例。

有什么,我失踪?任何帮助将不胜感激。

感谢

回答

0

我需要改变

set :location, "http://ec2-xxx-xx-xx-xxx.compute-1.amazonaws.com/" 

set :location, "ec2-xxx-xx-xx-xxx.compute-1.amazonaws.com" 

这解决了这一问题。