LoginSignup
0

More than 1 year has passed since last update.

WARNING in asset size limitの対処法について

Last updated at Posted at 2022-07-19

概要

  • 起こった現象
    EC2でデプロイしたアプリにアクセスできない

  • エラー概要:

ec2内のターミナルにて
Rails assets:precompile RAILS_ENV=production

このコマンドでアセットをコンパイルしようとすると以下のエラーが出る。
asset size limit.jpeg

仮説と検証

このエラーから、「アセットファイルがリミットを超えている」と理解しました。
対処法として、「サイズが超えているファイルを特定して対処する」
もしくは「サイズの上限を上げる」このどちらかになると思い調べました。

検証1(サイズが超えているファイルを特定して対処する)

エラー文を見ると、js/application-0bc4a48eadb9d940687.js.map.gz
というファイルがサイズを超えているそうです。
VSCodeを見ても特定のファイルは見つからず、サイズを超えているファイルが複数あることからこの方法は断念しました。多分ですが、bootstrapのファイルだと思います。

補足1:bootstrapとjqueryを削除

どうもassetsとwebpackerで干渉してたものがあったらしく、
gemfileからjquery-railsとbootstrapを削除。

そのエラーは出なくはなりました。

参考にしたサイト
上記のような対処法がありましたがbootstrapとjquery-railsを削除したくなかったので実際には試しておりません。もし、消しても問題がなければお試しください。

補足2: うまく規定サイズ内に納めてコンパイルさせる方法
参考にしたサイト
こちらはwebpack公式のドキュメントに沿ってサイズ内にコンパイルさせる方法です。
ディレクトリ構造などが分からず、行っている内容もあまり理解できなかったため、実際には行っていませんが、もしこちらの方法でできるのであれば、ベストな気がします。

検証2(サイズの上限を上げる)

こちらは実際に行ってうまく行った方法です。

config:webpacker.yml
# 変更前
resolved_paths: []
# 変更後
additional_paths: [] 

これだけです。
pathを変えることで、うまく行きました。
参考になったサイト

まとめ

このエラーで3日潰れました。
この記事によりあなたのエラーが解決するといいですね!

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0