六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 118|回复: 0

Capistrano自动部署Rails项目(Windows到Bluehost Fastdomain)

[复制链接]

升级  33.33%

26

主题

26

主题

26

主题

秀才

Rank: 2

积分
100
 楼主| 发表于 2013-2-7 04:27:27 | 显示全部楼层 |阅读模式
前提条件:
1.安装SVN客户端
2.安装TortoiseSVN
3.安装SSH

开始:
1.安装Capistrano(最新版为2.5.X)
gem install Capistrano

2.进入你的rails app 的上一层目录,生成对Capistrano的支持
capify rails_name

rails_name为你的rails app的名字

3.进入rails app的目录,修改生成的Capfile,让其为:
load 'deploy' if respond_to?(:namespace) # cap2 differentiatorDir['vendor/plugins/*/recipes/*.rb'].each { |plugin| load(plugin) }load 'config/deploy'default_run_options[:pty] = true

4.修改生成的config/deploy.rb:(含[]号的内容需替换为相关参数)
set :application, "[your_app_name]"  #[your_app_name]为你的rails app名字set :repository,  "svn+ssh://[user_name]@[your_domain_name]/home/[user_name]/[your_repository_path]" #[user_name]:你的用户名 , [your_domain_name]:你的域名, [your_repository_path]:你的SVN仓库名set :user, "[user_name]"set :domain, "[your_domain_name]"set :scm_command, "/home/[user_name]/bin/svn"set :local_scm_command, :default# If you aren't deploying to /u/apps/#{application} on the target# servers (which is the default), you can specify the actual location# via the :deploy_to variable:set :deploy_to, "/home/[user_name]/[deploy_root]/#{application}" #[deploy_root]:要部署的目的目录# If you aren't using Subversion to manage your source code, specify# your SCM below:# set :scm, :subversionrole :app, "#{domain}"role :web, "#{domain}"role :db,  "#{domain}", :primary => true

可参考:http://www.bluehostforum.com/showthread.php?p=48891

5.让svn通过TortoisePlink连接host主机.
找到svn配置文件(一般是C:\Documents and Settings\[用户名]\Application Data\Subversion目录下的config文件)
找到[tunnels],在其下文加入

ssh = C:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe -ssh -l  [ssh_user_name] -pw [ssh_password]  #C:\\Program Files\\TortoiseSVN为本人TortoiseSVN的安装目录,[ssh_user_name]为你的登陆SSH的用户名,[ssh_password]为密码

6.在你的rails app的目录下执行命令,按提示输入密码即可
cap deploy
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表