こちらのDockerfileを作成しました。
はじめに
大学で自然言語処理の研究室に配属されることになったので言語処理100本ノックを進めています。その問題でmatplotlibを日本語化しなければならない問題があったので、最近勉強しているDockerを使って環境を構築してみました。
環境
- Docker 19.03.8
Dockerfileについて
Dockerで環境構築するにあたって、
- ベースイメージをAlpineにする
- Anacondaを使用しない
- numpyもインストールする
ことを目標にしました。
pipでmatplotlibとnumpyをインストールする際に、ライブラリが足りずにエラーが出てしまったので、alpineのパッケージマネージャであるapkでbuild-baseとfreetype-devを追加しました。このうち、build-base内のlibstdc++とfreetype-devは実行時に利用されるため、削除しないようにしました。
また日本語に対応しているフォントとしてNotoSansCJKjpを入れました。そしてmatplotlibの設定ファイルでこのフォントを使用するようにし、キャッシュを削除しました。
またイメージサイズが小さくなる(らしい?)ので、RUNは一つにまとめてあります。
そして完成品がこちらになります。
最後に
Dockerはとても便利なのでこれからも使っていきたいです。