Capistrano(ソフトウェア)

カピストラノ
原作者ジェイミス・バック、リー・ハンブリー
安定版リリース
3.20.0 [ 1 ] ウィキデータで編集する / 2025年12月13日 (2025年12月13日
リポジトリgithub .com /capistrano /capistrano
書かれたルビー
オペレーティング·システムLinuxOpenBSDmacOS
タイプ展開ツール
ライセンスMITライセンス
Webサイトcapistranorb.com

Capistranoは、複数のサーバー上でスクリプトを実行するためのオープンソースツールです。主な用途はWebアプリケーションのデプロイです。データベースの変更などのタスクのサポートを含め、 アプリケーションの新しいバージョンを1台以上のWebサーバーで利用可能にするプロセスを自動化します。

CapistranoはRuby言語で記述されており、 RubyGems配布チャネルを通じて配布されています。Ruby on Railsウェブアプリケーションフレームワークから派生したものですが、 PHPなど他の言語で記述されたウェブアプリケーションのデプロイにも使用されます。

Capistranoは、主にUNIXシェルのコマンドラインでの使用を目的として実装されています。ユーザーは、例えばWebアプリケーションへの現在の変更をデプロイしたり、以前のデプロイ状態にロールバックしたりするなど、様々なCapistranoレシピから選択できます。

元々はSwitchTowerと呼ばれていましたが、商標権の競合により2006年3月にCapistranoに名前が変更されました。[ 2 ] オリジナルの作者であるJamis Buckは、2009年2月24日に、自分がプロジェクトの管理者ではなくなったことを発表しました。[ 3 ]

内部

Capistranoは、SSH経由で複数のリモートマシンでコマンドを並列実行するためのユーティリティおよびフレームワークです。Rakeツールから一部を借用したシンプルなドメイン固有言語を使用しています。また、ゲートウェイマシンを介したトンネリング接続もサポートしており、VPNやファイアウォールの背後で操作を実行できます。

Capistranoは元々、分散環境へのWebアプリケーションのデプロイを簡素化・自動化するために設計され、Ruby on Railsアプリケーションのデプロイ用に設計されたタスクセットがバンドルされていました。現在(Capistrano 2.0以降)、これらのデプロイタスクはオプトイン方式となり、クライアントはレシピに「load 'deploy'」を明示的に記述する必要があります。[ 4 ]

キャップファイルの例

タスク:xml_libs :hosts => "www.capify.org"実行" ls -x1 /usr/lib | grep -i xml"終了

これは「xml_libs」という単一のタスクを定義し、「www.capify.org」ホストでのみ実行されるように指定します。実行すると、/usr/lib 内のファイル名に「xml」という文字列を含むすべてのファイルとサブディレクトリが表示されます。capfile がカレントディレクトリにあると仮定すると、ユーザーは次のようにタスクを実行します。

キャップ xml_libs 

参照

参考文献

  1. ^ 「リリース 3.20.0」 . 2025年12月13日. 2025年12月13日閲覧
  2. ^ 「SwitchTower: 名前が変更されました」 . weblog.jamisbuck.org. 2006年3月5日.
  3. ^ "the { buckblogs :here }: Net::SSH、Capistrano、そしてさよならを言う" . Weblog.jamisbuck.org. 2009年2月24日. 2014年3月21日閲覧
  4. ^ "capistrano/README.md at master · capistrano/capistrano · GitHub" . Github.com. 2013年6月13日. 2014年3月21日閲覧

さらに読む