hoge

いわゆるWeb Developerの備忘録

Docker on WSL2は快適、だが

WSL2 が公開されてからというもの、何をやるにも環境は Docker on WSL2 上で行っています。

特に VSCode との相性がよく、VSCode Remote Container を使うと、コンテナの立ち上げからシェルへのアタッチまで行ってくれます。

.devcontainer.jsonというファイルに、コンテナビルド時にインストールする拡張機能が書けるので、.devcontainer.jsonDockerfiledocker-compose.yamlをひとまとめにした.devcontainerディレクトリを共有するだけで、WSL2 が有効で VSCode を使っていればすぐにでも同じ環境がいくつでも作れます。

エディタの好みはあるでしょうが、モダンな多機能エディタというと VSCode なので、入れない理由がありません。

Vim や Emacs を使いたければキーバインドを足せばいいだけです。

そんな便利な Docker on WSL2 ですが、Laravel の開発環境が大変重いです。

nginx を入れていない、PHP(+Node)と MySQL のお手軽構築なのですが、最適化をしていないせいか一つのリクエストが返ってくるまでに 3 秒近く待たされます。

また SPA の場合、Lavavel-Mix を使って JavaScript ファイルのバンドルやビルドを実行するのですが、これまた重く、100 秒近くかかります。

これでは快適な開発環境とは呼べないので、最適化をしなければならないですが、まだ Docker on WSL2 の情報が少ないのが現状で、手探りでオレオレ流最適化をする必要がありそうです。

現状で実行したのは、

  • OPcache の有効化
  • node_modules をマウントしない

ぐらいです。

PHP と Node の両方がボトルネックとなっているので、かなり険しいです。


同じカテゴリー(Tech)の記事
上の画像に書かれている文字を入力して下さい
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。

削除
Docker on WSL2は快適、だが
    コメント(0)