FessのDockerにMinIOを追加

Fessでは、以前にMinIO対応をして、storage://〜をクロールできるようにしたけど、Fessのストレージ機能を気軽に試せるようにはしていなかったので、今回、docker-fessのcomposeでストレージ機能も試せるようにしました。

実行するには以下を叩くだけです。

$ docker-compose -f docker-compose.yml -f docker-compose.cluster.yml -f docker-compose.minio.yml up -d

管理画面にログインすると、ストレージメニューが表示されるので、そこでファイルをアップロードすれば、MinIOに保存され、ファイルシステムクロールでstorage://〜で指定してあげればクロールすることができます。

Text Fragmentの対応

これの話で、Chromeだと、検索結果からリンクしたページ先で検索語などの対象部分がハイライトして表示することができます。Fessも次のリリースで、検索結果ページからリンクした先でハイライトするようになります。ただ、検索語がそのページに含まれていないとハイライトはされないですし、このハイライトはChromeの実装にも依存するので、必ずハイライトされるかどうかは微妙です。

この機能は検索パラメータの追加を有効にしているときにHTMLの検索結果リンクは適用されます。検索パラメータの追加機能は昔からあるのですが、最近はPDFをAcrobatで開くときにしか利用されない感じでした…。今後は、HTMLも対象になったので、使われることもあるかもしれませんね。

Fessのラベルの多言語対応

ラベルをローカライズできないのは昔から認識してはいたのですが、フォーラムでできないのか?と聞かれたので、ちょっとどうしたものかと考え、次のリリースで対応することにしました。

ラベルのデータの持ち方を大きく変えるのは大変なので、シンプルにできる方法がないかなと思い、思いついた方法がラベルの値に言語情報を付けてしまおう、という案になりました。つまり、ラベルの設定で値というのがありますが、これをtest_enという値で設定すると、ブラウザの言語が英語では表示されるけど、日本語ブラウザでは表示されなくなる感じです。

まぁ、この方法だと、10言語対応したいという場合は、10個のラベル設定を作る必要があるというのはあったり、今までのリリースで〜_jaみたいな値にしていると影響がある、とかはありますが、直近で多数の多言語化するケースは遭遇していないですし、過去の互換性も影響があるのはレアケースかなと思い、次のリリースに入れる感じにしました。

という感じで、若干回避的な対応ですが、そんなに多くの要望があるわけではないので、これで様子をみようかなと…。