LoginSignup
2

More than 5 years have passed since last update.

posted at

Railsの開発環境を整える①

※2016年10月に別のブログに書いたものを移行した記事です


新人SEである私が考えたベスト・プラクティスを実践してみるのが、今回のテーマです。
環境構築編では、環境を整えるところまで行います。

仮想開発環境を整える

開発PCのOSはWindowsかMacで、サーバーのOSはLinuxというのはよくある話だと思います。そのまま開発を行うと、開発環境と本番環境が異なり、不具合が起きてしまいます。それを防ぐために、仮想開発環境を使います。

WindowsやMacのPC上に、VirtualBoxやVMWareなどの仮想マシンをいれ、その上にCentOSなどをインストールします。開発中のアプリケーションはCentOSで動かしつつ、WindowsやMacのエディタで開発を行う、ということが可能になります。

仮想環境の構築については、Vagrant + Virtualboxで仮想環境構築 | イチとゼロ - mokuoの技術ブログを御覧ください。

今回は、CentOS7を使いたいと思います。

yumアップデート

仮想OSにログインしたら、yumは最初にアップデートしておきましょう。

$ sudo yum -y update
$ sudo reboot

言語設定

現在の言語設定を確認

$ localectl status
System Locale: LANG=de_DE.UTF-8
VC Keymap: de
X11 Layout: de

設定できる言語を確認し、英語(UTF-8)に設定

$ localectl list-locales | grep en
$ sudo localectl set-locale LANG=en_US.utf8

英語になった。

$ localectl status
System Locale: LANG=en_US.utf8
VC Keymap: de
X11 Layout: de

反映するには、仮想マシンを再起動する必要がある。

Rubyのインストール

Rubyのパッケージマネージャーである、rbenvを使います。
rbenvを利用することで、Rubyのバージョンを簡単に切り替えることができます。

gitコマンドをインストール

まず、gitコマンドをインストールしておきます。

$ sudo yum -y install git

rbenvのインストール

rbenvのソースを、GitHubからチェックアウトする

$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv
Cloning into '/home/vagrant/.rbenv'...
remote: Counting objects: 2542, done.
remote: Total 2542 (delta 0), reused 0 (delta 0), pack-reused 2542
Receiving objects: 100% (2542/2542), 461.53 KiB | 263.00 KiB/s, done.
Resolving deltas: 100% (1597/1597), done.

パスを通す

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

設定を反映

$ source ~/.bash_profile

rbenvが使える状態になっているか確認

$ rbenv --version
rbenv 1.0.0-33-gc7dcaf1

ruby-buildのインストール

rbenvでRubyをスムーズにインストールするために、ruby-buildをインストールする。

$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
Cloning into '/home/vagrant/.rbenv/plugins/ruby-build'...
remote: Counting objects: 6981, done.
remote: Total 6981 (delta 0), reused 0 (delta 0), pack-reused 6981
Receiving objects: 100% (6981/6981), 1.35 MiB | 322.00 KiB/s, done.
Resolving deltas: 100% (4151/4151), done.

rbenvでインストール可能なバージョンを確認する。

$ rbenv install -l

バージョンを指定してインストールする。今回は、2.3.0を指定。

$ rbenv install 2.3.0
Downloading ruby-2.3.0.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...
Installed ruby-2.3.0 to /home/vagrant/.rbenv/versions/2.3.0

インストールされたか確認

$ rbenv versions
\* system (set by /home/vagrant/.rbenv/version)
2.3.0

インストールしたバージョンを使用するように切り替える

$ rbenv rehash
$ rbenv global 2.3.0

Rubyのバージョンが変わったか確認

ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]

もしくは、

$ rbenv version
2.3.0 (set by /home/vagrant/.rbenv/version)

参考サイト・文献

Rubyの環境でBoxファイルを作成しておく

今後使用するかもしれないので、Rubyの環境までで、一旦Boxファイルを作成しておく。
```
$ vagrant status
Current machine states:

default poweroff (virtualbox)

The VM is powered off. To restart the VM, simply run vagrant up

$ vagrant package default --output centos72-ruby231.box
```

Railsのインストール

Rubyに特化したパッケージマネージャーである、RubyGemsを使って、Railsをインストールする

RubyGemsをアップデート

$ gem -v
2.5.1
$ gem update --system
$ gem -v
2.6.7

Railsをgemでインストール

$ gem install rails
$ rails -v
Rails 5.0.0.1

MariaDBのインストール

今回は、データベースにMariaDBを使用する。

yumレポジトリを追加する。

下記サイトから、OSなどを選択するだけで、repoファイルの中身を作成してくれる。
MariaDB - Setting up MariaDB Repositories - MariaDB

MariaDB-Setting-up-MariaDB-Repositories-MariaDB-1024x569.png

MariaDB.repoファイルを作り、中身を貼り付ける。

$ cd /etc/yum.repos.d/
$ sudo vim MariaDB.repo

yumでMariaDBをインストール

$ sudo yum -y install MariaDB-server MariaDB-client MariaDB-devel

MariaDBの自動起動を設定

$ sudo systemctl start mariadb
$ sudo systemctl enable mariadb
$ systemctl list-unit-files | grep mariadb
mariadb.service                             enabled

参考サイト

Railsの環境でBoxファイルを作成しておく

今後使用するかもしれないので、Railsの環境までで、一旦Boxファイルを作成しておく。
Vagrantfileがあるディレクトリで

$ vagrant package default --output centos72-rails5-mariadb.box

Railsアプリケーションの作成

ホストOSのテキストエディタで開発する場合は、共有フォルダの中につくる
今回は、テストフレームワークとしてRSpecを使うので、Test::Unitをスキップする。
また、DBにMySQLを指定。

$ cd data/
$ rails new gtd_console -d mysql -T

必要なGemパッケージをインストールする

作成したRailsアプリケーションの中に、Gemfileができている。
Gemfileの以下の箇所の、コメントアウトを外します。

\# gem 'therubyracer', platforms: :ruby
\# gem 'bcrypt', '~> 3.1.7'

必要なGemパッケージは、RubyGems.org | your community gem hostで検索することができる。
今回は、Gemfileに以下を追加。MariaDBを使うので、mysql2も記述する。

gem 'mysql2', '>= 0.3.18', '< 0.5'
gem 'i18n', '~> 0.7.0'

テスト用のGemパッケージ
```

Gemfileに書いたパッケージをインストール

$ bin/bundle install
```

ここまでで、環境が整いました。
開発編では、実際にRailsアプリケーションを作成し、開発を進めて行きたいと思います。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
2