Windowsでruby開発 - 開発環境構築編
先週、新しいプロジェクトが発足し、そのプロジェクトがruby on railsで開発する事が決定し、
僕自身がPHPエンジニアの為、rubyに関しては、全くのド素人の状態。。。
これはヤバイと、ちょっとずつ勉強を開始し始めました。
まずは、勉強する上で必要な開発環境の構築やIDE選定などを行い、Windowsでの開発環境を整えるべく調査を開始!
その内容を記事として残しておこうと思います。
参考にしたサイト
Ruby入門 (全22回) - プログラミングならドットインストール
ローカル開発環境の構築 (全13回) - プログラミングならドットインストール
NetBeans IDEのRuby on Rails開発環境構築手順
rbenv を使って ruby をインストールする(CentOS編) - Qiita
仮想マシンにRubyのインストール
今回はruby用に仮想マシンを構築しておき、その仮想マシンにRubyをインストールしていきたいと思います。
Vagrantでは、デフォルト、rubyがインストールされていますが、バージョンが古いので、最新版を入れたいと思います。
ドットインストールで確認した際、rbenvってツールが便利らしいので、
勉強がてらインストールしていきたいと思います。
rbenvとは?
rubyのバージョンを管理し、そのバージョンを切り替えられるツールのようです。
早速入れていきたいと思います。
rbenvを入れるには、gitが必要ななので、gitからインストールします。
[vagrant@localhost /]$ sudo yum -y install git
次に、gitを使用して、rbenv をインストールをします。
[vagrant@localhost /]$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv Initialized empty Git repository in /home/vagrant/.rbenv/.git/ remote: Reusing existing pack: 1878, done. remote: Counting objects: 5, done. remote: Compressing objects: 100% (5/5), done. remote: Total 1883 (delta 0), reused 0 (delta 0) Receiving objects: 100% (1883/1883), 296.99 KiB | 119 KiB/s, done. Resolving deltas: 100% (1175/1175), done.
次に環境設定です。
[vagrant@localhost /]$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile [vagrant@localhost /]$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile [vagrant@localhost /]$ exec $SHELL -l
次に、rubyをインストールするんですが、ruby-buildというツールが推奨されているのでインストールします。
[vagrant@localhost /]$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
rybyの最新版を調べたいと思います。
[vagrant@localhost /]$ rbenv install --list ・・・中略 2.0.0-p0 2.0.0-p195 2.0.0-p247 2.0.0-p353 2.0.0-p451 2.0.0-preview1 2.0.0-preview2 2.0.0-rc1 2.0.0-rc2
すごい量の一覧が出て来ました。。。。
中から、バージョンを取得して、最新バージョンのrubyをインストールします。
[vagrant@localhost /]$ rbenv install -v 2.0.0-p451
rbenvの設定を行いたいと思います。
まずは、rbenvの再読み込みを行います。
[vagrant@localhost /]$ rbenv rehash
インストールされている一覧を取得して、先ほどインストールした最新版を選択したいと思います。
[vagrant@localhost /]$ rbenv versions system (set by /home/vagrant/.rbenv/version) 2.0.0-p451 [vagrant@localhost /]$ rbenv global 2.0.0-p451 [vagrant@localhost /]$ rbenv versions system 2.0.0-p451 (set by /home/vagrant/.rbenv/version) [vagrant@localhost /]$ ruby -v ruby 2.0.0p451 (2014-02-24 revision 45167) [x86_64-linux]
アスタリスクが付いている方がデフォルトで使用されるバージョンになります。
取り合えず、rubyのインストールが完了しました。
Ruby on Railsのインストール
Rubyのインストールが完了しましたので、Railsのインストールを行います。
※Railsに関しては、別途記事を作成していきますので、省略させていただきます。
Railsは「gem」ライブラリでインストールする事が出来ます。
RubyGems はRuby に特化したパッケージングシステムで、ライブラリの作成や公開、インストールを助けるシステムです。
まずは、gemを最新版にアップデートしておきます。
[vagrant@localhost /]$ gem update --system
次にRailsのインストールを行います。
今回は、Rails自体がかなり膨大な量のファイルが展開される為、
ドキュメントのインストールをスキップしてインストールを実行します。
また途中経過を知るために、「-V」オプションもつけてコマンドの実行をしたいと思います。
[vagrant@localhost /]$ gem install rails --no-ri --no-rdoc -V
そうしたら、次にRubyをインストールした際にも行ったrehashをします。
[vagrant@localhost /]$ rbenv rehash [vagrant@localhost /]$ rails -v
バージョンが確認できたら、Railsのインストールは完了です。
Mysqlをインストールする
Rubyにはsqlliteがセットされているので、こちらを使うことも可能なのですが、
実際には、MySQLを使用する想定なので、MySQLをインストールしておきたいと思います。
[vagrant@localhost /]$ sudo yum install -y --enablerepo=remi mysql-server [vagrant@localhost /]$ mysql_install_db
次に環境設定を行っておきます。
ここの設定は、ドットインストールにならっておきましょう。
追記で、以下のようにしました。
[vagrant@localhost /]$ sudo vi /etc/my.cnf ・・・以下を追記 character_set_server=utf8 default-storage-engine=InnoDB innodb_file_per_table [mysql] default-character-set=utf8 [mysqldump] default-character-set=utf8
次に起動し、再起動時の起動も設定しておきます。
[vagrant@localhost /]$ sudo service mysqld start Starting mysqld: [ OK ] [vagrant@localhost /]$ sudo chkconfig mysqld on
起動が確認できたら、正常に動作しているかログインして確認すると共に、
Rails用のアカウントを3つ作成しておきたいと思います。
[vagrant@localhost /]$ mysql -u root -p mysql> create user 'development'@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) mysql> create user 'tester'@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec) mysql> create user 'production'@'localhost' identified by 'password'; Query OK, 0 rows affected (0.00 sec)
以下のコマンドで作成したユーザーに権限を付与します。
mysql> grant all on *.* to 'development'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> grant all on *.* to 'tester'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> grant all on *.* to 'production'@'localhost'; Query OK, 0 rows affected (0.00 sec)
ここまで出来たら、パッケージ化しておこうかと思います。
長くなってしまったので、今回はこのへんで終わりにしたいと思います。
次回は、railsプロジェクトの作成と、apacheとの連携、mysqlの使用についてやっていきたいと思います。
使用環境
- ホストOS: Windows7 x64
- VirtualBox: 4.3.10
- Vagrant: 1.5.2
- ゲストOS: CentOS6.4 x64
- IDE : NetBeans7.4
- Ruby : 2.0.0-p451
- Ruby on Rails : 4.1.0