DockerHubの公式Rubyイメージ上で、UTF-8の文字列を読み込んだ場合、Invalid Byte Sequenceエラーが出る。外部エンコーディングがASCIIになっているからなのだが、LANG
やLC_ALL
にen_US.UTF-8
をセットしても有効にならない。
$ locale -a
で確認したところ、C.UTF-8
のみUTF-8が有効になっていたので、LANG
にC.UTF-8
をセットしてやればよい。
$ LANG=C.UTF-8 ruby -e "p Encoding.default_external"