the*_*sis 15 capistrano ruby-on-rails ruby-on-rails-3
我想在我的本地计算机上部署应用程序.例如,我有我的Rails应用程序中:
/home/thesis/dev/myapp
但我想cap deploy:setup
给/home/thesis/deploy/
.我试过了,但是capistrano尝试连接localhost
,但根本不需要它.我该如何解决?
这是我的deploy.rb
role :app, "localhost"
role :web, "localhost"
role :db, "localhost", :primary => true
set(:deploy_to) { "/home/thesis/dev/myapp" }
set :bundle_without, [:development, :test]
set :use_sudo, false
set :repository, "."
set :scm, :none
set :deploy_via, :copy
set :copy_dir, "/home/thesis/deploy/tmp"
set :copy_remote_dir, "/home/thesis/deploy/tmp"
Run Code Online (Sandbox Code Playgroud)
它下降:
connection failed for: localhost (Errno::ECONNREFUSED: Connection refused - connect(2))
Run Code Online (Sandbox Code Playgroud)
该localhost
问题是因为你在设置这个role
定义.由于您在本地执行所有操作,并且由于Capistrano需要角色,因此您可以设置以下内容:
role :app, ""
Run Code Online (Sandbox Code Playgroud)
我也认为你正在设置copy_dir
和copy_remote_dir
值不正确.我建议删除这些并让Capistrano使用它的默认值.
这是一个适合您的完整配置:
role :app, ""
set :use_sudo, false
set :application, 'thesis' # you'll need to specify an app name
set :repository, "."
set :scm, :none
set :deploy_to, "/home/thesis/deploy/" # the destination dir
set :deploy_via, :copy
# override deploy:restart since this isn't a Rails app
namespace :deploy do
task :restart do
# no-op
end
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11755 次 |
最近记录: |