社内ハッカソンでrubyまわりの環境が必要になったので、構築手順をまとめてみました。

RVMのインストール

RVMをインストールします。

#必要なライブラリ、ツールのインストール
$ sudo apt-get -y install build-essential libssl-dev curl git-core

#RVMのインストール
$ bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)

もし、次のようなメッセージが表示された場合は、http://stackoverflow.com/a/9056395/497756の手順に従ってRVMをインストールします。

It looks you are one of the happy Ubuntu users, RVM packaged by Ubuntu is old and broken, follow this link for details how to fix: http://stackoverflow.com/a/9056395/497756

RVMのインストールが終わると、~/.bashrcの最終行に、RVMのパスに関連するスクリプトが追加されているので確認し、RVMを有効にします。

#最終行の確認
$ view ~/.bashrc

#RVMのパスを有効にする
$ source ~/.bashrc

RVMのノートと必要なライブラリの確認を行い、インストールします。

#ノートの確認
$ rvm notes

#RVMに必要なライブラリを確認する
$ rvm requirements

#必要なライブラリをインストールする
$ sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

rubyのインストール

次にRVMでrubyをインストールします。

#ruby 1.9.3のインストール
$ rvm install 1.9.3

#現在インストールされているrubyの一覧を表示する
$ rvm list

#インストールしたruby 1.9.3をデフォルトに設定する
$ rvm use 1.9.3 --default

もう一度rvm listを実行して、1.9.3がデフォルトになっていることを確認します。

=* ruby-1.9.3-p194 [ x86_64 ]
rubyとgemのバージョンも念のため確認します。
# ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
$ ruby -v

# 1.8.24
$ gem -v

~/.gemrcに次の設定を行い、デフォルトでri、rdocをインストールしないようにします。

install: --no-ri --no-rdoc
update: --no-ri --no-rdoc

Ruby on Railsのインストール

BundlerでRailsの環境をインストールします。

#Bundlerのインストール
$ gem install bundler

Railsアプリケーションを作成するフォルダを作成し、そのフォルダ内にGemfileファイルを作成し、次の設定を行います。

source 'http://rubygems.org'
gem 'rails'
gem 'sqlite3'

Bundlerをインストールし、BundlerでRailsの環境を構築します。

#BundlerからRailsインストール
$ bundle install

#Railsアプリケーションの作成
rails new . --skip-gemfile --skip-test-unit

railsコマンドのオプションを簡単に説明すると、--skip-gemfileは、Gemfileを作成しない(上書きしない)ためのオプションです。また--skip-test-unitはTest::Unitを組み込まないオプションです。

最後にRailsのアプリケーションの動作確認を行います。

#サーバを起動する
$ rails server

http://localhost:3000/にアクセスできれば、環境構築は完了です。


EGitでssh公開鍵を利用してgithubやSOURCEFORGE.JPのリポジトリにアクセスする方法の紹介です。今更ですが、SOURCEFORGE.JPを利用した開発の際にハマッタので備忘録です。

まずeclipseのメニュー Preferences > Network Connections > SSH2で、sshの設定を行います。 GeneralタブのSSH HomeとPrivate Keysの設定を確認して下さい。基本的にはデフォルトのままで問題ありません。

ssh2-KeyManagement

次にKey Managementタブでssh鍵を生成します。 「Generate RSA Key...」ボタンをクリックして鍵を生成します。 生成後、必要に応じてPassphaseを入力します(推奨)。 「Save Private Key...」をクリックしてSSH Homeに公開鍵と非公開鍵を保存します。 生成した公開鍵は、利用するリポジトリに登録します。

ssh2-General

最後にEGitを利用してリポジトリにPushします。 まず、Pushしたいプロジェクトを選択し、右ボタンで Team > Share Project... を選択します。

Share Project

Gitを選択し、「Use or create repository in parent folder of project」をチェックして「Create repository」をクリックしてリポジトリを作成します。

Configure Git Repository-1
Configure Git Repository-2
Configure Git Repository-3

続けてプロジェクトを選択し、右ボタンで Team > Commit を選択します。

Commit Changes

「Commit message」「Author」「commiter」「Files」を適切に入力/チェックしてコミットします。

続けてプロジェクトを選択し、右ボタンで Team > Remote > Push... を選択します。

Destination Git reposityの設定を行います。「URI」「Host」「Repository path」「Protocol」を適切に入力して次に進みます。「Authentication」は利用しないのでデフォルトのままで問題ありません。

Destination Git Repository

「Add create/update specifications」でマスターを選択して、「Add spec」をクリックし、「Next >」をクリックして進みます。

Push Ref Specifications

最後にリモートにプッシュする内容を確認して「Finish」をクリックします。

Push confirmation