一、 安装ruby
1、安装ruby2.0(必须2.0以上版本)
# ruby apt-get install ruby2.0
1、 下载安装rubygems2.6.8
# cd /usr/local/src
# wget https://rubygems.org/rubygems/rubygems-2.6.8.tgz
# tar –zxvf rubygems-2.6.8.tgz
# cd rubygems-2.6.8
# ruby setup.rb
2、 检查ruby版本
# ruby –v
$ gem -v
3、 切换ruby版本
# cd /usr/bin/
# ln -sf ruby2.0 ruby
# ln -sf gem2.0 gem
# ln -sf erb2.0 erb
# ln -sf irb2.0 irb
# ln -sf rake2.0 rake
# ln -sf rdoc2.0 rdoc
# ln -sf testrb2.0 testrb
二、 安装Capistrano (2.15.9)
$ gem install Capistrano –v 2.15.9
$ gem install capistrano-ext
或:(3.0以上版本,不支持subversion)
$ git clone https://github.com/capistrano/capistrano.git
$ cd capistrano
$ gem build *.gemspec
$ gem install *.gem
三、 修改部署配置文件
1、 主文件修改
$ vi /var/lib/gems/2.0.0/gems/capistrano-2.15.9/lib/capistrano/recipes/deploy.rb
2、
四、 初始化部署
部署服务器: 192.168.1.103
部署用户:deploy
部署目录:/data/1stoffice_app
# Cd /data/1stoffice_app
$ capify . #生成deploy 目录及文件
$ cap web{ip} deploy:setup
$ cap web{ip} deploy:check
$ cap web{ip} deploy
五、 配置文件说明:
六、 使用方法
1) 发布
$ cap web33 deploy
$ cap deploy #默认部署到33web
$ cap web29 deploy #部署到29 web
输入要部署的svn地址,不输入直接确认 默认:svn://192.168.1.101/1stOffice/trunk,到时候修改为发布的tag地址
输入要部署的web服务器密码
2) 回滚到前一版本
$ cap web{ip} deploy:rollback
3) 拷贝配置文件到web服务器
在config_file 目录下修改好Config.php文件然后执行:
$ cap web{ip} copy_config
4) 删除历史版本,只保留配置文件里设置的数目的历史版本
$ cap web{ip} deploy:cleanup
5) 停止服务
$ cap web{ip} deploy:stop
6) 启动服务
$ cap web{ip} deploy:start
7) 单文件更新
$ cap web{ip} deploy:upload files=’’
8)
七、 遇到问题
Cap deploy 时,svn info错误
解决:修改源文件
# Vim /usr/local/ruby/lib/ruby/gems/2.2.0/gems/capistrano-2.15.9/lib/capistrano/recipes/deploy/scm/subversion.rb
八、 原始脚本修改