💭

WindowsでWSL: Ubuntuを利用して、Ruby on Railsの開発環境を構築するためにしたこと。

2021/01/07に公開

Windows StoreからUbuntuをダウンロード

Ubuntuを起動して、ユーザー名とパスワードを設定

初回起動時にユーザー名とパスワードの設定を求められるので設定する。

システムを最新の状態にする

"sudo apt update" パッケージを更新
"sudo apt upgrade" パッケージをアップグレード

WSL側からVScodeを起動

"code ." WSL側からVScodeを起動
起動したVSCodeの左下に「WSL: Ubuntu」と表示されていれば、接続OK。

これでWindowsでもLinux環境で開発することができるようになりました!

Rubyをインストール

こちらを参考にしながら、Rubyをインストール

前準備
# apt パッケージの情報を最新にする
sudo apt update -y
# Ubuntu にインストールされているソフトウェアを最新にする
sudo apt upgrade -y
# Ruby のビルドに必要なパッケージを apt 経由でインストールする
sudo apt install build-essential -y
sudo apt install -y libssl-dev libreadline-dev zlib1g-dev

# PostgreSQL をインストール
sudo apt-get install postgresql-common
sudo apt-get install libpq-dev
Rubyインストール
# rbenv(パッケージ管理ツール)をインストール
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
# 環境変数にPathを設定
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
# シェルを再起動
exec $SHELL -l

# ruby-buildをインストール
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

# Rubyをインストール
rbenv install 2.7.2
rbenv global 2.7.2
Rails 6 以降で必要になった Node.js をインストール
# node.js, npmをインストール
sudo apt install -y nodejs npm
# n packageをインストール
sudo npm install n -g
# n packageを使ってnodeをインストール
sudo n stable
# 最初に入れた古いnode.js, npmを削除
sudo apt purge -y nodejs npm
# 再ログイン
exec $SHELL -l
# yarn packageをインストール
sudo npm install yarn -g
# node.js のバージョンが最新か確認
node -v
Gemfileをインストール
# rails をインストールするために bundle install
bundle install --path vendor/bundle

Dockerを利用する場合

Dockerを利用する場合は、下記コマンドを実行することで、"sudo"をせずにdockerコマンドを実行することができるようになる。

"sudo gpasswd -a $USER docker" dockerグループに現在のユーザーを追加
"sudo chown "$USER":"$USER" /home/"$USER"/.docker -R" 再帰的に"/home/$USER/.docker"配下のファイルの所有者、所属グループを現在のユーザに変更
"sudo chmod g+rwx "/home/$USER/.docker" -R" 再帰的に"/home/$USER/.docker"配下のファイルをグループ権限とrwx権限に変更
"cat /etc/group | grep docker" 設定を確認

参考

Qiita『【WSL / WSL2】VSCode×WSLでWindows上にLinux開発環境を構築』
かえるのほんだな『WSL2のUbuntuでDockerの環境構築をする!』

Discussion