結論
apt
で locales
と locales-all
をインストールし、環境変数 LANG
に ja_JP.UTF-8
を設定。以上。
作業記録
日本語ディレクトリを作ったら、以下のエラーが発生した。
sphinx-build -b html -d build/doctrees source build/html
Running Sphinx v1.4.9
loading translations [ja]... not available for built-in messages
loading pickled environment... done
building [mo]: targets for 0 po files that are out of date
building [html]: targets for 0 source files that are out of date
はじめに.rst:: ERROR: non-ASCII filename not supported on this filesystem encoding 'ANSI_X3.4-1968', skipped.
...(略)
/work/source/index.rst:14: WARNING: toctree contains reference to nonexisting document u'\u306f\u3058\u3081\u306b'
...(略)
日本語を含むパスでエラーが起きて、対象のディレクトリを見つけられず、 toctree でそのリンクがが作成されない感じ。
エラーメッセージで検索し、下記箇所が問題の処理だというのがわかった。
いろいろ検索したら、多言語対応に必要なパッケージが無いのが原因だったことがわかった。
- Python 3の各種エンコーディングについて - Qiita : http://qiita.com/methane/items/6e294ef5a1fad4afa843
- docker公式イメージと文字コード - Qiita : http://qiita.com/masarakki/items/0bdcefce99da6e8cbdac
そんなわけなので、 Dockerfile に下記 2 行を追加した。
RUN apt-get -y install locales locales-all && apt-get -y clean
ENV LANG=ja_JP.UTF-8
最終的に下記 Dockerfile ができた。
以上。