MacでVagrant環境下でnpmインストールできなかった話

スポンサーリンク

Laravelの環境構築をしました

どうも、だいさです。

転職をしてWeb開発をするようになってもう数ヶ月経つのですが、ようやく自宅のPCに勉強用のLaravelの環境を構築しました。その時にnpmのインストールでハマった話。

完全に理解できていないので、おかしい部分とかあるかもしれませんが、このエラーで調べても「これ!」っていう解決策が見当たらなかったので参考になれば。

ハマったエラー

Vagrantの仮想環境でLaravelの環境構築が完了(Laravelのページ表示)した後に「npm install」実行したところに出たエラー

画面スクショしたかったけど既に解決してしまっていたので、同様のエラーコードを調べて拝借してます。

バージョン

  • ホストOS:macOS Catalina 10.15.2
  • ゲストOS:Linux Ubuntu 18.04.3 LTS
  • Vagrant:2.2.7
  • ViertualBox:6.0.16
  • Laravel:6.13.1
  • npm:6.13.6

エラーにハマるまでの経緯

Laravelの環境構築

下記を参考にLaravelの環境構築を行う。リンク先の最後の「Step 9 Laravel ページの表示」まで順調に進む。

webpackのインストール

ひとまずLaravelページの表示はうまくいって、次はJavaScriptで色々やりたいため、下記を参考にwebpackをインストールする。

で、この途中でVagrant環境下で「npm install」としたところ、最初に書いたエラーが出ました。

エラー解決のためにやったこと

「npm init」でpackage.jsonの作り直し(✕)

npmは、package.jsonを見ているということで、Laravelの環境構築の中で既にpackage.jsonはできていましたが、それを削除してもう1回「npm init」して作り直したりした後に「npm install」をしても変わらず。

Laravelの環境構築のやり直し(✕)

エラーメッセージの「ENOENT」を調べたら「Error NO ENTry」ということでファイルが無いとかを示しているようなので、「手順間違ったかな?」とか思ってVirtualBoxから仮想環境を削除して、もう1回Laravelの環境構築を実施しましたが、何も変わらず同じところで同じエラーでした。

解決した方法

どうやらVagrantに「vagrant ssh」でログインした状態で「npm install」をすることが悪かったようで、ホストOS(Mac)側で「npm install」を実行したらうまくいきました。

ただし、Macには通常ではnpmがインストールされていないとのことで、下記を参考にしたらできました。

スポンサーリンク

あとがき

環境構築は先人たちのおかげで手順がたくさん見つかるのはいいですけど、それゆえに予想外のところでハマった時に抜け出すまでが大変ですね。

まだまだ理解できておらず「とりあえず解決したからいいか」という感じです。ちゃんと理解しなければならないとは思っています…。本当はQiitaに書きたかったんだけど、理解不足過ぎるので、自分の庭であるブログに覚え書きにしました。

それでは、また!

 

スポンサーリンク

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です