capistrano+gitでソースコードのデプロイサーバ構築③(capistranoのインストール)


今回は、capistrano+gitでソースコードのデプロイサーバ構築①で構築したデプロイサーバにcapistranoのインストールを行いたいと思います。

capistranoはrubyで動作するもので、元からyumでインストールされているrubyを使ってそのままcapistranoのインストールを行ったところエラーが出ることがあったため、rbenv(rubyのバージョンを切り替えてくれるものらしい)とruby-buildというのを使ってrubyをインストールしたいと思います。

ということで構築後の環境はデプロイサーバ内に
・git 2.1.0 (①でインストール済み)
・rbenv 0.4.0-129-g7e0e85b
・ruby-build 20141225-3-g1c0509a
・ruby 2.2.0p0
・capistrano 3.3.5
というミドルウェアをインストールしていきます。

■deployユーザーの作成

# useradd deploy
# passwd deploy

■rbenvのインストール

# su - deploy
$ git clone git://github.com/sstephenson/rbenv.git rbenv
$ vim ~/.bash_profile

最後の行に追記

export RBENV_ROOT=~/rbenv
export PATH="$RBENV_ROOT/bin:$PATH"
eval "$(rbenv init -)"

保存後、反映

$ source ~/.bash_profile
$ rbenv --version

■ruby-buildのインストール

$ mkdir ~/rbenv/plugins
$ cd ~/rbenv/plugins
$ git clone git://github.com/sstephenson/ruby-build.git

■rubyのインストール
その前にまずlibffi-develのインストールをしましょう。
これをしないと、エラーが発生します。
また、途中でzlibやOpenSSL関連を使用するっぽいので、そのあたりもインストールします。
また、ついでに紛らわしいので元からAmazon Linux AMIにインストール済みのruby 2.0.0をアンインストールしておきましょう

# yum -y install libffi-devel zlib-devel openssl-devel readline-devel 
# yum -y remove ruby ruby20

下記のコマンドでrubyの最新バージョンを確認

$ rbenv install --list
Available versions:
  1.8.6-p383
  1.8.6-p420
~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~
  2.2.0-rc1
  2.2.0   ←これが最新のstable
  2.3.0-dev
  jruby-1.5.6
  jruby-1.6.3
~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~
  ree-1.8.7-2012.02
  topaz-dev

上記で確認した最新バージョンをインストール

$ rbenv install -v 2.2.0
$ rbenv rehash
$ rbenv versions
  2.2.0 ←正常にインストールできている
$ rbenv global 2.2.0
$ ruby -v
ruby 2.2.0p0 (2014-12-25 revision 49005) [x86_64-linux]

■capistranoのインストール
capistranoのインストールをgemというコマンドを使って行います。
(gemはrubyに特化したパッケージ管理システムでrubyのインストール時に同時にインストールされている)
また、capistranoのプラグイン等を同時にインストールします。

$ gem install capistrano
$ cap -v
Capistrano Version: 3.3.5 (Rake Version: 10.4.2) ←正常にインストールされている
$ gem install capistrano_colors
$ gem install capistrano-ext
$ gem install railsless-deploy

次回はcapistranoの設定を行います。

■参考

投稿者:

nikuatsu

大学時代にWebアプリ開発を中心とした会社を企業し、約15年経営した末に倒産。現在はとあるインターネット上でのビジネスを展開する企業の開発部門で、あらゆる技術関連について対応している。 スキルの範囲: ・主にPHPを中心としたWebアプリケーション開発 ・Linuxサーバを中心としたインフラストラクチャー全般 ・MySQL、PostgreSQLを中心としたRDBMSの設計、運用 ・Objective-CによるiPhoneアプリの開発 などなど。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です