WSL2とDocker, webpack --watch --mode=developmentが遅い
- 作成日: 2020-08-24
- 更新日: 2023-12-24
- カテゴリ: WSL2
WSL2とDockerとwebpack
最近WSL2にしてDockerを使っていたら、webpack
の--watch
オプションがすごい遅い。
どうにもならないので--watch
オプションを--watch-poll
に変更。
それから↓のようなBashスクリプトを書いた。
while true; do
npm run watch
done
npm run watch
のwatch
はpackage.json
内のwebpack --watch-poll --mode=development
のエイリアス。
↑のスクリプトを常時回すようにしたら少しだけ体感がマシになった。
しかしどう考えても正攻法じゃない気がする。
それにこれだとビルドに時間がかかるためどうしても体感が悪い。
開発に支障が出ているので何とかして解決したい。
だが、なぜこんなにwatch
が遅いのか?
追記
原因はWSL2ではなくてDockerだったみたいです。
webpack.config.js
に以下を追加したらポーリングがうまく行くようになりました。
watchOptions: {
ignored: /node_modules/,
aggregateTimeout: 300,
poll: 500
}
ちなみに↓だとうまくいきません。
watchOptions: {
poll: true
}