こんにちは!
LiSMOtechの久津間です。
今回はHomebrewを利用してローカル環境にRuby On Rails環境構築を行いました。
ネットを探せば色々と情報が出ているので、環境構築に苦しむことはないと思いますが、備忘録としては残しておきます。
それでは早速、構築方法を見ていきましょう。
Homebrewとはパッケージマネージャーになります。
ソフトウェアの導入を単純化することができ、実行ファイルや設定ファイル、ライブラリ等を一つのファイルとしてまとめたパッケージを一元で管理してくれるものです。
調べた限り、パッケージ管理には、以下の2パターンがあるみたいです。詳細は割愛しますが、気になった方は是非深掘りしてみてください。
先ずはターミナルを開き、Homebrewのインストールから行います。
公式サイトに記載されているインストールのコマンドを実行し、Homebrewをインストールします。
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
次にインストールがされているか確認します。
$ brew -v Homebrew
2.5.11-129-g570edcc
Homebrew/homebrew-core (git revision 6b215; last commit 2020-11-21)
Homebrew/homebrew-cask (git revision 1874d; last commit 2020-11-21)
また、こちらのコマンドを使うことで、Homebrewが正常にインストールできたかも確認することができます。エラーが出ていないことを確認しましょう。
$ brew doctor
インストールが確認できたら、Homebrewを最新状態にアップデートします。
$ brew update
ここでHomebrewの導入は完了となります。
rbenvの読み方は「アールビーエンブ」です。多分。。。
rbenvを利用することによって複数のRubyのバージョンを管理することが可能となります。
プロジェクトごとにRubyのバージョンを指定して使うことが可能となるので、とっても便利です!
正直、インストールしない選択肢が分からないので、とりあえずインストールしちゃいましょう。
ruby-buildはrbenvのプラグインになります。
rbenv installというRubyのバージョンをインストールするコマンドを提供しています。
つまり、Rubyのバージョンごとに異なるディレクトリにビルドするためのツールと思ってもらって問題ないかと。
rbenvをインストールする際に、セットでインストールすることになります。
先ずはrbenvとruby-buildのインストールを行います。
既にインストールがされているか、確認するためには以下のコマンドで確認可能です。
$ rbenv -v
インストールされていなければ、以下のコマンドでインストールを実行します。
$ brew install rbenv ruby-build
もし、インストールされていれば、以下のコマンドでアップデートしましょう。
$ brew upgrade rbenv ruby-build
初期設定を行います。
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
sourceコマンドでファイルに記載した内容を反映させます。
$ source ~/.bash_profile
rbenvからインストール可能なRubyの一覧を表示します。
$ rbenv install --list
ごちゃごちゃと色々なバージョンやら何やら表示されますが、ここでは、2.6.5のRubyをインストールしていきます。
$ rbenv install 2.6.5
新しいバージョンのRubyのインストール後、以下のコマンドを実行します。
※rbenvに認識されているRubyの実行ファイルのshimsをインストールするらしい。
$ rbenv rehash
システム全体で使うRubyのバージョンを指定(設定)するために、以下のコマンドを実行します。
$rbenv global 2.6.5
以下のコマンドを実行し、インストールしたRubyのバージョンに*が表示され、設定されていることを確認します。
$ rbenv versions
* 2.6.5
Rubyのバージョンは以下のコマンドでも確認可能です。
$ ruby -v
bundlerは、gemのバージョンやgemの依存関係を管理してくれる、rubyのライブラリ(gem)です。
bundlerを使うことで、複数人で開発をしたり、gemのバージョンが上がってもエラーを起こさずに開発することが可能となります。
互換性を保ちながらgemを導入、利用することができる便利なモノと認識しておけばとりあえずOKです。
gemをインストールする際は基本的にはbundler経由でインストールすることになります。
先ずはbundlerがインストールされているか確認します。
$ bundle -v
インストールされているのであれば、以下のコマンドでアップデートしましょう。
$ gem update bundler
インストールがされていなければ、以下のコマンドでインストールします。
$ gem install bundler
MySQLはオープンソースのリレーショナルデータベース管理システムです。
詳細は割愛しますが、この他にもデータベースの選択肢はありますが、ここではMySQLを利用してRuby On Ralisの環境を構築していきます。
以下のコマンドでmysql関連の利用できるパッケージを確認できます。
$ brew search mysql
mysql: stable 8.0.22 (bottled) Open source relational database management system https://dev.mysql.com/doc/refman/8.0/en/
(中略)
上記を見る限りですとバージョンを指定しないでmysqlをインストールした際は8.0のバージョンがインストールされるっぽいですね。
特に指定や要件もないし、面倒なので、そのままインストールします。
$ brew install mysql
インストール完了後、表示されるメッセージに何をすればいいのか案内の文が表示されます。
必要に応じてノートにメモっておきましょう。
僕の場合は以下のような案内文が表示されました。
==> mysql
We’ve installed your MySQL database without a root password. To secure it run:
mysql_secure_installation
MySQL is configured to only allow connections from localhost by default
To connect run:
mysql -uroot
To have launchd start mysql now and restart at login:
brew services start mysql
Or, if you don’t want/need a background service you can just run:
mysql.server start
以下のコマンドでバージョンを確認します。
$ mysql --version
mysql Ver 8.0.22 for osx10.16 on x86_64 (Homebrew)
無事に8.0がインストールされました。
続いてMySQLを起動してみます。
$ mysql.server start
Starting MySQL
.. SUCCESS!
起動が確認できたら、接続も確認してみましょう!
$ mysql -uroot
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.22 Homebrew
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.
mysql>
上記のようにログインができましたでしょうか?
接続を切る場合は「exit」と入力し、エンターを押してください。
ここまでで、データベース「MySQL」のインストールは完了となります。
因みに、以下のコマンドでデータベースを止めることができます。
$ mysql.server stop
さてここまで来たら、もう少しです!
先ずはRailsをインストールし開発をする作業ディレクトリを作成します。
$ mkdir ~/work
$ cd ~/work
Rubyのバージョンを指定します。(今後、バージョンを切り替えすることを考慮しています。)
作業ディレクトリに.ruby-versionファイルが作成されます。
$ rbenv local 2.6.5
Gemfileを作成します。
$ bundle init
適当なテキストエディターやviコマンドなどを使って、「Gemfile」の最終行の「#gem “rails”」を「gem “rails”」として、コメントアウトを削除します。
続いて、Railsをインストールします。
$ bundle install --path=vendor/bundle
インストールが完了したらRailsのバージョンを確認しましょう。
$ bundle exec rails -v
Rails 6.0.3.4
Railsアプリを作成します。
(結構時間かかると思われます。お茶でもして気長に待ちましょう。)
$ bundle exec rails new アプリ名
Webサーバーを起動します。
$ rails server
で、完了の予定でしたが、以下のようなメッセージが・・・
Webpacker configuration file not found…
Please run rails webpacker:install
ふむふむ。。。
何やらお願いされておりますね。。。
Webpackerの詳細はここでは省略しますが、モダンなフロントエンド開発をサポートしてくれるRails用のgemです。
html、CSSやJavaScript、画像などを1つのファイルとしてまとめることができるモジュールバンドラー(部品の集まりみたいなもの)で、node.js(サーバーサイドのjavascript)のモジュールの1つで、ざっくり記載すると、まとまっていることでサーバーからユーザーへの通信が素早くなります!
詳しくは「Webpack」のキーワードで調べてみてください。
とりあえず、上で表示されたメッセージのとおり、コマンドをたたきます。
$ rails webpacker:install
さて、気を取り直してサーバーを起動します。
$ rails server
以下のURLをブラウザに入力してみましょう!
http://localhost:3000/
以上で、環境構築は終わりです!
ここからはRuby On Railsの開発に入っていきます。
お疲れ様でした!!!
NEXTGATE LiSMOtechでは中小企業を中心にブランディング・WEBマーケティングを活用したWEB戦略を提供しています。
企業課題・問題に関するご相談、WEBサイト制作やグラフィックデザイン制作のクリエイティブに関するご相談やご質問、お見積りなどお気軽にお問い合わせください。
平日10:00〜19:00
© NEXTGATE LiSMOtech All rights reserved