BackEnd

Capistrano3でRailsアプリケーションをデプロイする

投稿日:2017年7月14日 更新日:

はじめに

最近、現在開発中のアプリケーションのステージング環境の構築を行なっています。
それにあたり、初めてCapistranoの設定を行いましたので、ここに設定した内容をまとめます。

注意点としては、DBスキーマの管理にMigrationではなくridgepoleというGemを利用しています。
興味がある方はこちらの記事をご覧ください。

また、OctopusというGemを利用しています。
https://github.com/thiagopradi/octopus

前提条件

ruby 2.4.1
rails 5.1.0
capistrano 3.8.1
unicorn 5.3.0
ar-octops (GitHubからインストール)
ridgepole 0.6.5

 

Cpistranoについて

Capistranoはデプロイを自動化するフレームワークです。
Railsのほか、JavaやPHPで書かれたアプリケーションのデプロイにも使われます。
https://github.com/capistrano/capistrano

 

導入

Gemのインストール

Gemfileに下記のgemを追加してbundle installします。

設定ファイルの準備

下記のコマンドを実行してCapistranoの設定ファイルを作成します。

 

このコマンドを実行すると、下記の通り設定ファイルが作成されます。

 

デプロイ設定

Capfileを修正する

生成されたCapfileを下記の通り修正します。

各環境で共通のデプロイ設定を記述する

共通の設定はdeploy.rbに記述します。

環境ごとのデプロイ設定を記述する

今回は開発環境の構築ですので、staging.rbを修正します。

Unicornの設定

下記の通り、config/unicorn/staging.rbを作成します。

 

実行

ターミナルで下記のコマンドを実行します。

 

さいごに

ステージング環境の構築にあたり、Capistranoによるデプロイの設定をまとめました。

blog-page_footer_336




blog-page_footer_336




-BackEnd
-,

執筆者:


comment

メールアドレスが公開されることはありません。

CAPTCHA


関連記事

laravel logo

LaravelのFacade(ファサード)とは? 何気なく使用していた裏側の仕組みを解説!

1 はじめに1.1 Facadeを使用しているクラス2 Facadeの仕組み3 Facadeの作成3.1 サンプルコードに必要な実装3.2 Serviceの作成3.3 Facadeクラスの作成3.4 ...

docker-syncでファイルの同期を高速化する

1 はじめに2 docker-syncの導入3 設定ファイルの作成3.1 docker-composer.yml3.2 docker-compose-dev.yml3.3 docker-sync.ym ...

rails

Rails5で出力される「alias_method_chain is deprecated.」について

1 はじめに2 alias_method_chainとは3 Module#prependとは4 とりあえず、DEPRECATION WARNINGの出力をなくしたい5 さいごに はじめに 直近のプロジ ...

laravel logo

コードでわかるLaravelのブラウザ認証

1 はじめに1.1 認証機能の概要2 Controller3 SessionGuard3.1 fireAttemptEvent3.2 retrieveByCredentials3.3 hasValid ...

laravel logo

Laravelの基礎知識

1 はじめに2 Laravelの概要2.1 学習コストが低い2.2 Symfonyがベース2.3 DIを積極的に活用している3 ディレクトリ構成3.1 app3.2 bootstrap3.3 conf ...

フォロー

blog-page_side_responsive

2017年7月
 1
2345678
9101112131415
16171819202122
23242526272829
3031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。