dockerコンテナ内のマウント先のファイルやディレクトリ名が文字化けする


環境

  • Docker:version 17.12.0-ce
  • docker-compose:version 1.8.0
  • 使用イメージ:Ubuntu 16.04

状況

普段GoogleMusicを使って音楽を聞いているんですが、アプリの改悪などでストリーミング再生が出来ない時があり(1曲ダウンロードが終わるまで待ちぼうけ)、交雑した電車内では結構辛い。
そこで、Subsonicでメディアサーバを構築しようとしていたところ、マウント先のディレクトリが文字化けしてしまい、サービスからファイルと認識されなかった。(IDタグも無効)

docker-compose のVolumesでホストのディレクトリをコンテナ先でマウントした

コンテナに入って、マウントポイントでlsをしたら文字化け

解決

Dockerfileに以下のコマンドを追加

Dockerfile
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8

その後、再度イメージをビルド

bash
docker-compose build
docker-compose up -d

確認すると日本語で表示された(コンソールの設定が適切ではなく文字が綺麗に表示されていません)。めでたし