capistrano introduction

22
Capistranoのご紹介 (デプロイツールを使お う) @_zoo Voyage Group Inc. System Solution Group.

Upload: misa-kondo

Post on 02-Jul-2015

1.274 views

Category:

Documents


4 download

DESCRIPTION

Capistranoのご紹介

TRANSCRIPT

Page 1: Capistrano introduction

Capistranoのご紹介

(デプロイツールを使おう)

@_zooVoyage Group Inc.

System Solution Group.

Page 2: Capistrano introduction

・デプロイとは?

・何故Capistranoを使うのか?

・Capistranoの使い方

・Capistranoのカスタマイズ設定

Page 3: Capistrano introduction

デプロイとは?

• サービスを利用可能な状態にする

• 狭義だとソース配布

• デプロイ=リリースという考えもある

Page 4: Capistrano introduction

何故Capistranoを使うのか?

• Capistrano=Rubyで書かれたデプロイツール

• RubyOnRailsと仲良し

• デプロイ作業の効率化

Page 5: Capistrano introduction

本番へのデプロイ

Page 6: Capistrano introduction

rsyncとSCPとかでも十分

Page 7: Capistrano introduction

そんなわけないですよ

Page 8: Capistrano introduction

例えば、

・リリースしたけどバグってた

・フライングリリースしたとか、

Page 9: Capistrano introduction

1つ前の状態に巻き戻したい

Page 10: Capistrano introduction

たとえバージョン管理していても

• 1つ前のバージョンにソースを戻す

• もう一度ソース配布せなあかん

Page 11: Capistrano introduction

ソース巻き戻し

$ git checkout master$ git push origin master:master_bk$ git push –f origin HEAD^:master$ git reset HEAD^

Masterブランチに移動ローカルの最新版を別名ブランチに退避リモートのmasterブランチを1つ前のバージョンに戻すローカルのmasterブランチを1つ前のバージョンに戻す

Page 12: Capistrano introduction

ソース配布

Page 13: Capistrano introduction

デプロイツールがあれば

rollbackコマンド叩くだけ

$ cap prodution deploy:rollback

Page 14: Capistrano introduction

デプロイツールを使っていると

リリースソースCurrentディレクトリ

20111201

20111220

20111222

シンボリックリンク

Page 15: Capistrano introduction

なので、rollbackの時は

Page 16: Capistrano introduction

こんな感じ

リリースソースCurrentディレクトリ

20111201

20111220

20111222

シンボリックリンク

Page 17: Capistrano introduction

シンボリックリンクをつけかえるだけ

Page 18: Capistrano introduction

バージョンがどうこうなんて気にしなくてよい

Page 19: Capistrano introduction

便利で安心

Page 20: Capistrano introduction

他にも

Page 21: Capistrano introduction

デプロイ作業に必要なタスクがそろっている

・起動処理・停止処理・再起動処理・ミドルウェアのチェック

・任意のサーバにソース配布

Page 22: Capistrano introduction

便利なタスクが揃ってる