3
1

More than 1 year has passed since last update.

はじめての環境構築 ~WindowsでRailsの開発環境を構築する~

Last updated at Posted at 2022-06-20

はじめての環境構築 ~WindowsでRailsの開発環境を構築する~

1. はじめに

1-1. 対象読者

  • Windows 10 / Windows 11 のユーザー
  • 開発環境の構築に自信がない
  • 構築中にエラーが出たが、対処方法が分からない

1-2. 実行環境

  • OS: Windows 11 Home 21H2 64bit
  • PC: LAVIE HZ750/L
  • CPU: Intel Core i7-8550U
  • メモリ: 8GB

1-3. Windowsに構築しようと思ったきっかけ

Railsを学習するためにMacBookを購入したのですが、開発効率が思ったより向上しなかったので、慣れ親しんだWindowsに戻すことにしました。

MacはM1チップだったこととシェルがZSHだったことのどちらかが原因でgemのインストールに苦労しました。また、ExcelやWinMerge、サクラエディタ、psqleditといったツールを開発の補助で使用していますが、Macには同等のツールが存在しません。

1-4. 注意点

次の環境構築は自力でチャレンジできるよう、公式ドキュメントに沿って解説しています。そのため公式ドキュメントの画面をいちいち表示しているので少し見づらいかもしれませんが、ご了承お願いします。

2. WSL2のインストール

RailsはLinuxというOSをベースに開発されています。
Windows上に直接環境を作ってしまうと、gemのインストールで苦労する可能性が高いです。
PCのメモリに不安がなければWSL2をインストールし、Windows上にLinuxの仮想環境を構築しましょう。

2-1. WSL2のインストール手順

Microsoft公式のインストール手順

WSL2がインストール済だったため、本記事に手順を載せられませんでした。

公式の手順書は難しいという方はこちらを参考にしてください。
【初心者向け】WSL2のインストール ~ 基本操作をまとめて解説

正しくインストールできていれば、PowerShellで wsl --list --verbose を実行すると図のよう
に「Running」と表示されます。
Image from Gyazo

2-2. WSL2の設定① Windows Terminalの設定

ここからは公式ドキュメントに従って、WSL2でプログラミングをするための設定をします。次のリンクを別タブで開いてください。
公式ドキュメント:WSL 開発環境を設定する

「Linuxのユーザー名とパスワードを設定する」
2-1.で設定済なので割愛します。

「パッケージの更新とアップグレード」
Windows Updateと違ってLinuxは自動で更新されることがありません。ここのコマンドをコピーしておき、定期的に実行するようにしましょう。

「ディストリビューションを追加する」
ディストリビューションとは、Linuxの配布形式です。デフォルトは「Ubuntu」になっており、特にこだわりがなければ追加する必要はありません。

「Windows Terminalの設定」
RailsやGitでコンソールを使う機会が多いのでインストールすることにします。赤枠のリンクを別タブで開きます。

Image from Gyazo

Image from Gyazo

Image from Gyazo

Image from Gyazo

Windows Terminalが開きます。使い方は後ほど解説します。
Image from Gyazo

2-3. WSL2の設定② Visual Studio Codeのインストール

Visual Studio Code(以下、VSCodeと表記します)は、プログラミングに使う便利ツール(=統合開発環境)です。他に使っているツールがあれば飛ばしてかまいませんが、他のツールでもWSL2上で開発できるのかは分かりません。

引き続き「公式ドキュメント:WSL 開発環境を設定する」を進めます。

「File Storage」の要約:

Windowsとは別にLinux用のファイルシステム(ファイルやフォルダを管理するもの)が作られており、Linux上で作業しているときにWindowsのファイルを参照することができますが、パフォーマンスが悪くなるかもしれません。

ソースコードはLinuxのファイルシステムに保存するようにしましょう。

「Visual Studio Code の使用」
赤枠のリンクを別タブで開きます。
Image from Gyazo
Image from Gyazo
Image from Gyazo

ビット数が分からない方は「ビット数 確認」で検索してください。
PCメーカーによって違う可能性があるので、本記事には載せていません。

ダウンロードされたexeを起動します。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

ここで私の環境ではエラーが発生しました。
Image from Gyazo

エラーの解消:

Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

Image from Gyazo

2-4. VSCodeにRemote WSL拡張機能をインストール

赤枠のリンクを別タブで開きます。
Image from Gyazo
Image from Gyazo

VSCodeが開き、拡張機能が表示されます。
Image from Gyazo

2-5. VSCodeのライブラリを追加するため、Linuxディストリビューションを更新する

赤枠のコマンドを順に実行していきます。ここからはWindows上でコマンドを実行するのか、Linux上でコマンドを実行するのかが非常に重要になります。
Image from Gyazo

2-2.でインストールしたWindows Terminalを開きます。検索ウィンドウに「ターミナル」と打つと表示されます。※残念ながら、「terminal」では表示されません。
Image from Gyazo

PowerShellがデフォルトで表示されます。
ここにUbuntu(Linux)を並べて表示します。
Image from Gyazo

左:Windows、右:Linuxとなります。
Image from Gyazo

右側に先ほどのコマンドを打ちます。
Image from Gyazo
Image from Gyazo

実行ログ:

※画像はWindows側でwslを起動して実行してしまったので、少し見た目が異なります。
Image from Gyazo

もうひとつのコマンドも同じように実行します。
Image from Gyazo

Image from Gyazo

実行ログ:

Image from Gyazo

「Visual Studio Code で WSL プロジェクトを開く」
これでLinuxからVSCodeを開けるようになりました。右側(Linux)のコンソールで code . と打ってみましょう。
Image from Gyazo
Image from Gyazo

「VS Code Remote 内の拡張機能」
テーマの設定やVSCodeの拡張機能をインストールする時の注意書きが記載されています。拡張機能は便利なので、これからインストールする機会が多いと思います。一読しておいてください。
Image from Gyazo

2-6. WSL2の設定③ Gitのインストール

Gitはソースコードのバージョン管理をするためのツールです。WEB業界でGitHubというサービスを使ってオープンソースを開発したり、ポートフォリオのソースコードを面接官に見せたりするようです。余談ですが、SI業界ではTortoise SVNが主流です。
PCが壊れたときにソースコードが道連れになって消えてしまわないように、インストールするようにしましょう。
Image from Gyazo

このページの後ろのほうで、Gitの認証情報を管理するためにWindows側にインストールすることが推奨されています。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

インストールした場所が分からなくなることがよくあるので、なるべくデフォルトのままにしておくことをお勧めします。「git インストール 場所」と検索すると出てきます。
Image from Gyazo

デフォルトでチェックされている項目はそのままにしてください。その他はお好みで。
Image from Gyazo
Image from Gyazo

こちらも好みで。私はVSCode内でしかGitを使わないのでこれにしました。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

そろそろ嫌になってきます。
Image from Gyazo

改行コードがOSによって異なっていて、WindowsはCRLF、LinuxはLFとなっています。この差異のために改行コードが違うだけのファイルを「変更のあるファイル」とGitが認識してしまう問題があるようです。
この問題を回避する選択肢がどれなのか現時点では分からないですが、後で「.gitattributes」というファイルで設定変更できるようです。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

あと少しです!
Image from Gyazo
Image from Gyazo

終わりました。Gitは設定が多いですね。
Image from Gyazo

2-7. Gitをアカウントに紐づける

赤枠のコマンドを打って、アカウントを紐づけます。緑色のヒントにも記載されていますが、GitHubのアカウントが必要になります。
Image from Gyazo

GitHubのユーザー名はここに書かれています。
Image from Gyazo

2-6でGitを使用するエディタをVSCodeにした方は、VSCodeでターミナルを開きます。その他を選んだ方は、Windows Terminalの左側(Windows)でも動作すると思います。
Image from Gyazo
Image from Gyazo

2-8. Git Credential Manager のセットアップ

2-7と同様にコマンドを実行します。
Image from Gyazo
Image from Gyazo

2-9. WSL2の設定④ Dockerのインストール

ようやく最初の「公式ドキュメント:WSL 開発環境を設定する」に戻ってきました。
Dockerとはアプリケーションの実行環境をコンテナという場所に作ってコピーや削除を簡単にする技術(というイメージ)です。詳細は調べてみてください。
リンクを別タブで開きます。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

※Clone and log out を押す前に
このボタンを押すと、PCが強制的に再起動されます。開いているファイルは保存して閉じておきましょう。
Image from Gyazo

2-10. Dockerの設定

この設定を確認していきます。
Image from Gyazo

再起動後、自動で開かなかった場合はデスクトップのアイコンから起動します。
Image from Gyazo

設定を開きます。
Image from Gyazo
Image from Gyazo

続いて4.~6.を確認します。
Image from Gyazo
Image from Gyazo

右側(Linux)でコマンドを実行します。
Image from Gyazo

2-11. VSCodeにDockerの拡張機能をインストールする

最初の2つは2-4.でインストール済なので、3つ目のリンクを別タブで開きます。
Image from Gyazo
Image from Gyazo
Image from Gyazo

長くなりすぎるので、以降の「Docker を使用して、既存のアプリ プロジェクトの開発コンテナーを作成しましょう。」は省略します。

2-12. WSL2の設定⑤ データベースのインストール

赤枠のリンクを別タブで開きます。
Image from Gyazo

データベースには色々種類がありますが、ここではPostgreSQLをインストールしてみます。データベースはいくつでもインストールできます。
「PostgreSQLのインストール」までスクロールします。
赤枠の内容を順に実行していきます。
Image from Gyazo

Windows Terminalの右側(Linux)でコマンドを実行します。
Image from Gyazo
Image from Gyazo

実行ログの続き:

Image from Gyazo

インストールが成功していたら、バージョンが表示されます。
Image from Gyazo

PostgreSQLを実行するにはサービスの起動が必要です。起動していないときはこういうエラーが表示されます。
Image from Gyazo

PostgreSQLのサービスを起動すると、実行できるようになります。
Image from Gyazo

「パフォーマンスを向上させるために GPU アクセラレーションを設定する」
設定が多いので、今回は省略しました。以降の設定も必須ではないので省略します。

長くなりましたが、以上でWSL2の設定完了です!

3. Railsのインストール

いよいよRailsの開発環境をインストールしていきます。ここからは手持ちの本を参考にしたので、コマンドを直接書いていきます。
VSCodeのターミナルでコマンドを実行します。
起動時はWindowsのファイルシステム上にいるので、Linuxのファイルシステムに移動します。

cd ~

3-1. rbenvのインストール

Rubyのバージョンを管理してくれる rbenv をインストールします。

git clone https://github.com/rbenv/rbenv.git ~/.rbenv

Image from Gyazo

次の2行で環境変数を設定します。

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

Image from Gyazo

ここで環境変数を読み込むために、一度Linuxを再起動します。
Windows Terminalの左側(Windows)で次のコマンドを実行します。

wsl --shutdown

自動で再起動されるみたいです。
Image from Gyazo

VSCodeも閉じられてしまったので、Windows Terminalの右側(Linux)で次のコマンドを実行し、起動します。

code .

開いたVSCodeのターミナルで次のコマンドを実行し、バージョンが表示されればrbenvmpインストールは成功です。

rbenv -v

Image from Gyazo

3-2. ruby-buildのインストール

ruby-build は3-1の rbenv のプラグインになります。
VSCodeのターミナルで次のコマンドを実行します。

git clone https://github.com/rbenv/ruby-build.git "$(rbenv root)"/plugins/ruby-build

Image from Gyazo

ruby-buildの推奨パッケージもインストールします。
最新のコマンドをrbenv/ruby-build Wiki (github.com)からコピーします。
Image from Gyazo

エラーが出る場合は先頭に sudo をつけて実行してください。
Image from Gyazo

実行ログの続き:

Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

3-3. Rubyのインストール

現時点(2022年6月)でRailsチュートリアルのRailsのバージョンが6.0.4なので、推奨されているRuby 2.6.6をインストールします。
参考:Ruby と Rails のバージョン表

VSCodeのターミナルで次のコマンドを実行します。

rbenv install 2.6.6

Image from Gyazo

Rubyのデフォルトバージョンとして指定します。

rbenv global 2.6.6

Rubyのバージョンを確認します。

ruby -v

Image from Gyazo

3-4. RubyGemsの更新

RubyGemsはRubyと一緒にインストールされますが、最新の状態に更新します。

gem update --system

コンソールが消えてしまったので、最後の部分の実行ログになります。

実行ログ:

Image from Gyazo
Image from Gyazo

3-5. Railsのインストール

VSCodeのターミナルで次のコマンドを実行します。

gem install rails -v 6.0.4

Image from Gyazo

実行ログの続き:

Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

3-6. Node.jsのインストール

Node.jsはWSL2上に構築するので、次の記事を参考にします。
WSL 2 上で Node.js を設定する | Microsoft Docs

Node.jsは更新が頻繁なので。バージョン管理ツール nvm をインストールし、nvm からnode.jsをインストールします。
次のコマンドをWindows Terminalの右側(Linux)で実行します。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo

実行ログの続き:

Image from Gyazo

Image from Gyazo
Image from Gyazo
何も応答がありません。同じように応答がなかったり、エラーメッセージが表示されたりした場合は、ターミナルを開きなおします。
Windows TerminalでUbuntuの新規タブを開きましょう。
Image from Gyazo
「nvm」と表示されればインストール成功です。
Image from Gyazo
node.jsをインストールする前に、すでにインストールされていないことを確認します。
Image from Gyazo
同じ応答なので、node.jsはインストールされていません。
Image from Gyazo
私は基本安定版しかインストールしないので、1つ目のコマンドだけ実行します。
Image from Gyazo
Image from Gyazo
Image from Gyazo
Image from Gyazo
node --version はエラーが出たので、node -v でバージョンを確認します。
Image from Gyazo

3-7. PostgreSQLをRails用にセットアップ

ここではPostgreSQLのユーザー名を設定しますが、Linux(Ubuntu)のユーザー名と同じものにしてください。
VSCodeのターミナルで次のコマンドを実行します。xxxxxxはユーザー名に置き換えてください。

sudo su postgres -c 'createuser -s xxxxxx'

Image from Gyazo

PostgreSQLのライブラリもインストールします。

sudo apt install libpq-dev

Image from Gyazo

3-8. railsコマンドのインストール

rails *** のコマンドを実行できるようにします。
VSCodeのターミナルで gem install rails を実行します。
Image from Gyazo

実行ログの続き:

Image from Gyazo
Image from Gyazo

インストールは以上で完了になります。お疲れ様でした!
GitHubのプロジェクトをクローンしてみたり、rails new でRailsの新規プロジェクトを作成したり色々と試してみてください。

4. おわりに

初めて記事を書いたので、至らない点が数々あると思います。
記事の改善点やインストール中に発生したエラーがあれば、教えてください。

5. 改訂履歴

2022/06/22
「3-6. Node.jsのインストール」をWSL2にインストールするよう、内容を刷新しました。
「3-8. railsコマンドのインストール」を追加しました。

3
1
0

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
  3. You can use dark theme
What you can do with signing up
3
1