概要
dockerコンテナをビルドしただけでは当然フォントが全然入っていない
つまりcssでフォントを指定しようとしても、デフォルトで入っているものを使う or webフォントを使う 等しないと文字化けしたりしちゃう
webフォントで無駄にパフォーマンス落としたくないのでインストールしたい
1. フォントファイルを用意しよう
当然フォントファイルが必要なので、入れたいフォントのフォントファイル(.ttf
なり.otf
なりいっぱい種類あります)を用意する
2. コンテナ内から参照できる場所に置こう
1でホストPCにダウンロードしてきたファイル(あるいはディレクトリごとでも可)をコンテナ内に持っていく
dockerの環境はそれぞれだと思うのでここでは割愛
とにかくコンテナから見られるところに置くのです
[自分用メモ]
- docker-syncでsyncされるところに置けばOK
- とりあえず assets 配下とかでいいんじゃない
3. インストール
インストールというかただ配置するだけなんです。
インストールされているフォントはOSによって場所は異なりますが、
~/.fonts
や /usr/share/fonts
などに入っています。これは調べればすぐ出ます。
つまり用意したフォントファイルをここに置いてあげればそれで使えるようになります。
(Windowsにしか入っていないフォント(MSゴシックとか)も、Windowsからフォントファイルを抜いて持って来れば入る。多分ライセンスとか的にアウトかも。)
それをコンテナビルド時にやりたいので
# フォントをインストール
RUN mkdir -p /usr/share/fonts
COPY app/assets/fonts /usr/share/fonts
こんな感じで書いておけば入る
0. いいコマンド
-
fc-list
インストールされているフォント一覧を表示してくれる
ファイルの在り処、cssで指定する名称も出してくれるので最高
感想
コンテナビルド時にフォントファイルのダウンロードもできるようにすればスマートですな