Railsの開発環境構築
はじめに
前回までHomebrew、rbenv、bundler、MySQLなどの記事を書いてきたが、これらの必要なツールを導入していくことがまさにRailsの環境構築です。今回は、これらの導入の手順をまとめていく。
今回は大まかな流れをまとめて、詳細については各記事を参照していただくためのリンクを貼っていく。
開発環境
環境構築の手順
Homebrewのインストール
「Homebrew」のインストールに必要な「コマンド」を使えるようにするための「Command Line Tools」をインストールします。
$ xcode-select --install
もしくは以下のurlからインストール
https://developer.apple.com/download/more/
1)上のリンク先で、ID、passの入力
2)ボックスにチェックして「submit」
3)「Download Tools」を選択
4)「See more downloads」を選択
5)「command line」を検索
6)自身のMacに合わせたものをインストール
次に、Hombebrewをインストールします。
$ cd #ホームディレクトリに移動 $ pwd #移動完了の確認 $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" #インストールの実行コマンド
インストールが実行できないときはコマンドが変更された場合があるので、「Homebrewの公式サイト」を確認して下さい。インストールには数分かかります。
途中で要求されるpasswordは自身のMacのpassです。また「Press RETURN to …」と出たら素直にEnterしましょう。
<補足>
もしここで「Agreeing to the Xcode・・・」のエラーが出たら、Xcodeのライセンスへの同意が必要です。
Finderのアプリケーションからxcodeを起動
agreeをクリック
もう一度Homebrewをインストールする
Homebrewがインストールできたかの確認と、最新版へのアップデートをしておきます。
$ brew -v $ brew update
また、Macのバージョンが10.11.1以上の場合は、ターミナルから以下のコマンドを実行します。
$ sudo chown -R `whoami`:admin /usr/local/bin
ここまでの参考ページ
rbenvとruby-buildのインストール
以下のコマンドでrbenvとruby-buildをインストールします。
$ brew install rbenv ruby-build
インストール後は以下のコマンドでパスを通し、rbenvがインストールできたかrbenv -v
で確認します。
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile $ source ~/.bash_profile $ rbenv -v
opensslとreadline
次に「openssl」をインストールします。これがないとrbenv環境下でのbundle install
でエラーが出ます。
また、ここで併せてコマンドラインの編集機能ツール「readline」をインストールしておきます。bash_profile
の文字編集ができるようになります。
$ brew install openssl $ brew install readline $ brew link readline --force
rbenvでRubyのインストール
さて次は、さっそくrbenvを利用してRubyをインストールします。
$ rbenv versions $ rbenv install -l $ RUBY_CONFIGURE_OPTS="--with-readline-dir=$(brew --prefix readline) " $ RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl) " $ rbenv install 2.5.1 $ rbenv rehash
この手順では、以下を行なっています。
以下のコマンドを実行して、インストールできているかを確認します。
$ rbenv versions
rbenv global
でデフォルトで利用するRubyのバージョンを指定しておきましょう。ruby -v
でバージョンを確認し設定通りかも確認しましょう。
$ rbenv global 2.5.1 $ ruby -v
ここまでの参考ページ
MySQLのインストール
次にMySQLをインストールしていきます。今回は例として、バージョン5.6系を入れていきます。
$ brew update $ brew install mysql@5.6
インストールが完了したら、次にいくつかの初期設定を行っていきます。
MySQLのパスを通す
まずは、MySQLをどこからでも操作できるように、以下のコマンドでパスを設定します。
$ echo 'export PATH="/usr/local/opt/mysql@5.6/bin:$PATH"' >> ~/.bash_profile $ source ~/.bash_profile $ which mysql /usr/local/opt/mysql@5.6/bin/mysql と表示されればOK
次に、MySQLのインストール後の動作確認をしていきます。
$ mysql -version #表示されればインストールOK $ mysql.server start #MySQLの起動 Starting MySQL . SUCCESS! ←これが表示されればOK $ mysql -uroot #MySQLへの接続 Welcome to the MySQL …省略… mysql> ←これが表示されて入力待ちになればOK mysql> exit #exitコマンドで抜ける $ mysql.server stop #MySQL停止
以上のようになれば、問題なく動作しています。
MySQLの自動起動設定
次に、P Cを起動すると同時にMySQLが起動するよう、MacOSが提供する「Launchd」ツールを利用した自動起動の設定をしていきます。
$ mkdir ~/Library/LaunchAgents $ ln -sfv /usr/local/opt/mysql\@5.6/*.plist ~/Library/LaunchAgents $ launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql\@5.6.plist
MySQLサーバーのアクセス権限の初期設定
初めてMySQLをインストールした時のみ、以下のコマンドを実行します。
$ mysql_install_db
これでMySQLデータベース上に権限を設定するための初期テーブルが作成されます。
MySQLのセキュリティ設定
次に、MySQLのセキュリティの設定を行います。以下のコマンドでrootユーザーにパスワードなどの設定を行なっていきます。
なお、ここは飛ばしたとしてもローカルでの開発では支障なく動作します。
$ mysql_secure_installation (省略) Press y|Y for Yes, any other key for No: y #「VALIDATE PASSWORD plugin をインストールする?」 # yesの「y」を入力してenter (省略) Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 0 # パスワードポリシーはローカル環境ならLOWでOK。 # 本番環境などでは必要に応じて強度の強いMEDIUM,STRONGを設定 (省略) New password: # パスワードを入力してenter # パスワードは忘れないように!! (省略) Re-enter new password: # パスワードを再入力してenter (省略) Estimated strength of the password: 100 Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : y # パスワード登録を進めるために「y」を入力してenter (省略) Remove anonymous users? (Press y|Y for Yes, any other key for No) : y # 無名ユーザを削除するか?「y」を押してenter (省略) Disallow root login remotely? (Press y|Y for Yes, any other key for No) : y # root のログインをローカルからに制限するか?「y」を押してenter (省略) Remove test database and access to it? (Press y|Y for Yes, any other key for No) : y # test データベースを削除するか?「y」を押してenter (省略) Reload privilege tables now? (Press y|Y for Yes, any other key for No) : y # 権限の変更を更新するか?「y」を押してenter Success. All done!
以下のコマンドでログインできるか確認します。
$ mysql -uroot -p
パスワードを求めらるので上で設定したパスワードを入力します。
ここまでの参考ページ
MySQLの導入(Railsアプリ)とMySQLのディレクトリ構造
bundlerとRuby on railsのインストール
最後にbundlerとRuby on railsをインストールしていきます。
尚、お好みによってですが、Ruby on railsをシステム環境(rbenv配下)に置かない場合(プロジェクト毎に管理したい場合など)は、以下のgem install rails --version='x.x.x.x'
は実行しません。
また、以下のgem install rails --version='x.x.x.x'
のx.x..には任意のバージョンを入力して下さい(5.2.2.1など)
具体的にはこの記事の「bundlerの使い方」以降をご参照ください。
$ gem install bundler $ gem install rails --version='x.x.x.x' $ rbenv rehash $ rails -v
インストール後はもう一度rehashして、コマンドを適用させます。最後にrails -v
コマンドでインストール出来たかを確認します。
ここまでの参考ページ
最後に
開発環境の構築については、いつかまとめたいと思っていたので、情報がまとまった段階でまとめられて丁度良かった。