Just do IT

思うは招く

Rails 6 で rails s をすると起こる Webpacker エラーを解決

環境

問題

rails sをすると、以下のエラーが出た。

Webpacker configuration file not found /home/vagrant/workspace/rails_prac/config/webpacker.yml. Please run rails webpacker:install Error: No such file or directory @ rb_sysopen - /home/vagrant/workspace/rails_prac/config/webpacker.yml (RuntimeError)

これをしてと言われるので

rails webpacker:install

やってみたら

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

「yarnが入ってないよ」と言われる。

Rails 6 から Webpacker が標準搭載になり、yarn のインストールが必要になった。

Rails6 開発時につまづきそうな webpacker, yarn 関係のエラーと解決方法 - Qiita

解決

Node.jsをインストール

まず、Node.jsをインストールする。

そのために、Node.jsのバージョン管理ツールであるnvmをインストールする。これはRubyでいうところのrbenv。

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

.bashrcを読み込む。

source ~/.bashrc

nvmのバージョン確認でインストールされているかチェック。

nvm
=>
Node Version Manager ~ 

と出たらOK。

Node.jsをインストール。バージョンはその時に安定しているものを選ぶ。

nvm install v10.14.2

切り替える。

nvm use v10.14.2

バージョン確認。

node --version
=> v10.14.2

yarnをインストール

yarn とは、Node.js のためのパッケージマネージャで、npm の代替になる。

  • どのようなライブラリのパッケージがインストールされているのか記録する
  • 新しいパッケージのインストールや削除を簡単にしてくれる
  • 依存関係のあるパッケージを自動的にインストールしてくれる
  • Facebookが作った

yarnのversion 1.13.0をインストール。

curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 1.13.0

設定を再読み込み。

source ~/.bashrc

ヘルプを見る。

yarn --help

インストールできた。

webpackerをインストール

rails webpacker:install

をする。少々待つと。

Webpacker successfully installed 🎉 🍰

できた。

rails sをする

さて、本来の目的であるrails sをする。

vagrant + Ubuntu の仮想環境で開発しているため、localhost:3000にアクセスしても拒否される。ここらへんはSinatraアプリを作ったときと同じ。

よって、

rails s -b 0.0.0.0

をして

http://192.168.33.10:3000/

にアクセスすると、、、

f:id:K_Koh:20200115120643j:plain

できた!

参照