🤕
Ruby on Rails x docker 環境で development.log に謎の壊れた文字が出る時のたったひとつのcoolな答え
TL;DR
config/environments/development.rb に以下の行を追加しろ。
config.web_console.allowed_ips = '0.0.0.0/0'
現象
- development.log の1行目に謎の文字列が大量に出力される
\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000...
- ヌル文字なので、Visual Studio Code などで開いたときは
NULLNULLNULLNULL...
と見える - よくみると
Cannot render console from ...
とも表示されている
原因
- Ruby on Rails 6.x 系なら development 実行の時に
web-console
という gem が入っているはず- docker 下で動かすときは許可IPの指定が必要
対処
config/environments/development.rb に以下の行を追加しろ。
config.web_console.allowed_ips = '0.0.0.0/0'
注:
web-console 4.0.3 でconfig名が変更になったため、Web上の情報としては
config.web_console.whitelisted_ips
の方が多いみたい。
参考
- Rails 6: Docker dev環境のconfig.hostsとwhitelisted_ipsについて|TechRacho by BPS株式会社
- rails commit log流し読み(2020/08/20) | なるようになるブログ
Discussion