中堅プログラマーの備忘録

忘れっぽくなってきたので備忘録として・・・

【Ruby on Rails】動作環境を構築するーーー2020.07 ver

1.概要

とある案件を受注し、かねてからやろうと考えていた【Ruby】で開発しようと試みました。
【Ruby】は優秀なフレームワークである【Ruby on Rails】が使えることが
大きなメリットであり、さらにオブジェクト指向であることも魅力です。
また、インタプリタ方式で記述がシンプルです。


とりあえずメリットだけ挙げてみましたが、まずは開発環境の構築からやっていきます。


開発環境はWindows10、64bitになります。

2.事前準備

【Ruby】【Rails】のインストールを進めていくと下記が必要になってきます。
①Node.js
②Yarn
③Git
なのでここであらかじめインストールを行っていきます。

①Node.js --- 14.2.0

下記の記事を参照して下さい。
www.chuken-engineer.com

②Yarn --- 1.22.4

classic.yarnpkg.com

からインストーラーをダウンロードして実行します。

③Git for windows --- 2.27.0

gitforwindows.org

からインストーラーをダウンロードして実行します。

3.【Ruby】の設定

①ダウンロードする

ここからダウンロードが出来ます。
rubyinstaller.org


どのバージョンをダウンロードしていいのかわからない場合は
WHICH VERSION TO DOWNLOAD?
の文面を見て判断したらよさそうです。

文面に

Ruby + Devkit 2.6.X(x64)インストーラーを使用することをお勧めします。
との記載があったので今回は

Ruby+Devkit 2.6.6-1 (x64)

をクリックしてダウンロードをしました。

②インストールする

インストーラー(rubyinstaller-devkit-2.6.6-1-x64.exe)を実行すると
下図の流れでウィンドウが表示されます。
f:id:tsu--kun:20200728152056p:plain
f:id:tsu--kun:20200728152105p:plain
f:id:tsu--kun:20200728152117p:plain
f:id:tsu--kun:20200728152127p:plain
f:id:tsu--kun:20200728152140p:plain


完了のウインドウが表示されて
【Finish】をクリックすると下図のコンソールが起動します。

f:id:tsu--kun:20200728152159p:plain
【MSYS2】のインストールについてなので【ENTER】を押します。



f:id:tsu--kun:20200728152209p:plain
上図のように

Install MSYS2 and MINGW development toolchain succeeded
と表示されれば完了です。
再度【ENTER】を押して終了します。


③確認する

インストールが完了したらスタートメニューに

Start Command Prompt with Ruby
が作成されていますのでこれを起動します。

起動したら

ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]

C:\Users\〇〇>

とバージョン情報が表示されればOKです。



または、コマンドプロンプトを起動して

>ruby -v
ruby 2.6.6p146 (2020-03-31 revision 67876) [x64-mingw32]

でもOKです。

4.【Rails】の設定

①インストールする

下記のコマンドを実行します。

>gem install rails
Fetching railties-6.0.3.2.gem
Successfully installed railties-6.0.3.2
Successfully installed rails-6.0.3.2
Parsing documentation for railties-6.0.3.2
Installing ri documentation for railties-6.0.3.2
Parsing documentation for rails-6.0.3.2
Done installing documentation for railties, rails after 0 seconds
2 gems installed

②確認する

>rails -v
Rails 6.0.3.2


参考までにアンインストールする場合は下記のとおりです。

>gem uninstall railties -v '6.0.3.2'

5.【SQLite3】をインストールする。

これは下記コマンドからインストールするだけでOKです。

>gem install sqlite3
Temporarily enhancing PATH for MSYS/MINGW...
Installing required msys2 packages: mingw-w64-x86_64-sqlite3
Building native extensions. This could take a while...
Successfully installed sqlite3-1.4.2
Parsing documentation for sqlite3-1.4.2
Done installing documentation for sqlite3 after 0 seconds
1 gem installed

6.アプリケーションを作成する。

作業ディレクトリに移動して【rails new】コマンドを実行します。
今回はtestAppという名前で作成してみます。

>rails new testApp
・
・
・
Webpacker successfully installed ?? ??

問題がなければ上記まで進みます。
この状態までくれば、とりあえずの目標は達成になります。
不足なものがあれば、下記のようなエラーが発生します。

SQLite3がない場合

LoadError: 126: 指定されたモジュールが見つかりません。   - C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/sqlite3-1.4.2/lib/sqlite3/sqlite3_native.so

Node.jsがない場合

'node' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
'nodejs' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
Node.js not installed. Please download and install Node.js https://nodejs.org/en/download/

Yarnがない場合

Yarn not installed. Please download and install Yarn from https://yarnpkg.com/lang/en/docs/install/

7.確認する。

それでは先ほど作成したアプリケーションを実際に動かしてみます。
作成下ディレクトリに移動して、下記のコマンドを実行し、サーバーを起動させます。

>cd testApp
testApp>rails s
=> Booting Puma
=> Rails 6.0.3.2 application starting in development
=> Run `rails server --help` for more startup options
*** SIGUSR2 not implemented, signal based restart unavailable!
*** SIGUSR1 not implemented, signal based restart unavailable!
*** SIGHUP not implemented, signal based logs reopening unavailable!
Puma starting in single mode...
* Version 4.3.5 (ruby 2.6.6-p146), codename: Mysterious Traveller
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://[::1]:3000
* Listening on tcp://127.0.0.1:3000
Use Ctrl-C to stop


http://localhost:3000】にアクセスし
下図のように表示されれば完了になります。
f:id:tsu--kun:20200728152924p:plain



※結局Node.js+Expressで開発することにしました・・・