Edited at

CentOS 7とRails 5とMySQL 5.7で使う(1)


長めの前置き

日頃、業務ではWindows ServerとASP.NET MVC5でWEBサイトを構築しています。WEB系企業ではLinuxが主流だと思いますし、RubyやNodeでサンプルコードが記載されることも多いですよね。今まで避けて逃げてきたLinuxの学習をひと通り終えた(とりあえずLPIC2取得)ので、以前より興味のあったRailsを勉強することにしました。

インストール手順を調査しましたが、RubyやRailsの進化が早かったり、CentOS 6ベースの情報であったりで公開されている情報ではインストールの進行上、エラーに遭遇しました。

色々な記事を横断して参考にさせて頂きながら行ったインストールの方法を記事にいたします。

そして、この情報も陳腐化してしまうかもしれませんが、ご参考いただければと思います。


構成

いくつかの記事に分けたいと思います。

・CentOS 7にRubyやRails 5をインストールする。

・MySQLをインストールする。

・Rails 5でアプリを構築する。


CentOS 7にRubyやRails 5をインストールする

まずCentOS 7を用意します。VirtualBoxの例が多いように思いますが、公開を想定しているので、ConoHaでやってみます。


  1. CentOS 7のサーバーを追加します。

    こんな感じで。



  2. rootのSSHを禁止します。

    本題に早く入りたいけど、このくらいはやっておきます!

    私も早く本題を書きたい:robot:

    # vi /etc/ssh/sshd_config
    


    sshd_config

    PermitRootLogin no    # yesからnoへ。
    




  3. railsユーザを作成します。

    アプリはrailsユーザで動作させるようにします。

    # useradd -p $(perl -e 'print crypt("Hoge123!", "\$6\$saltsalt")') rails
    
    # usermod -aG wheel rails



  4. Gitをインストールします。

    # yum install -y git
    



  5. rbenvをインストールします。

    今回はシステムワイドインストールで進行します。



    1. Gitから取得します。

      # git clone git://github.com/rbenv/rbenv.git /usr/local/src/rbenv
      



    2. パスを通して再読み込みします。

      # echo 'export RBENV_ROOT="/usr/local/src/rbenv/"' >> /etc/profile.d/rbenv.sh 
      
      # echo 'export PATH="${RBENV_ROOT}/bin:${PATH}"' >> /etc/profile.d/rbenv.sh
      # echo 'eval "$(rbenv init -)"' >> /etc/profile.d/rbenv.sh
      # cat /etc/profile.d/rbenv.sh
      # . /etc/profile.d/rbenv.sh



    3. インストールされたか確認します。

      # rbenv --version
      
      rbenv 1.1.1-37-g1c772d5



    4. 他のユーザでも確認しておきます。

      問題なし:thumbsup:

      # su - rails
      
      $ rbenv --version
      rbenv 1.1.1-37-g1c772d5
      $ exit





  6. Rubyをインストールします。

    Ruby on Railsなんで、Rubyがいなきゃ始まりません。というわけでRubyをインストールします。



    1. まずそもそもRubyのインストールに必要なパッケージからインストールします。

      「下ごしらえ」の「下ごしらえ」です。

      # yum install -y bzip2 openssl-devel readline-devel zlib-devel gcc
      
      # git clone git://github.com/rbenv/ruby-build.git /usr/local/src/rbenv/plugins/ruby-build
      # cd /usr/local/src/rbenv/plugins/ruby-build
      # ./install.sh



    2. インストールするRubyのバージョンを決めます。

      ここでは執筆時点で最新の2.5.1をインストールしてみます。

      # rbenv install -l
      
      Available versions:
      1.8.5-p52
      1.8.5-p113
      :
      :
      2.5.1
      :
      :
      ree-1.8.7-2012.02
      topaz-dev



    3. Ruby本体をインストールします。

      私の場合、これから新規かつ個人で学習するので、ここでは執筆時点で最新の2.5.1をインストールしてみます。インストールには5分程度かかります。

      # rbenv install 2.5.1
      



    4. 使用するRubyを指定します。

      # rbenv global 2.5.1
      



    5. インストールされたか確認します。

      問題なし:thumbsup:

      # ruby -v
      
      ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
      # gem -v
      2.7.6





  7. Railsをインストールします。



    1. まずはgemを更新します。

      # gem update --system
      



    2. Rails本体をインストールします。

      # gem install -N rails
      
      # gem install bundler
      Overwrite the executable? [yN] y
      # rbenv rehash

      ちなみに以下のコマンドがたくさん溢れていますが、Deprecatedです。

      # gem install --no-ri --no-rdoc rails
      



    3. インストールされたか確認します。

      :thumbsup::thumbsup::thumbsup:

      # rails -v
      
      Rails 5.2.0





終わりに

最後までお読み頂き、ありがとうございます。初めてのQiita投稿が、初めてのRailsになってしまいました。次回はMySQLをとりあえずインストールしたいと思います。正直、すでに素晴らしい記事やブログがありますが、ひととおり実施したことを投稿したいと思います。