Fess 12.5のリリース

Fess 12.5をリリースしました。

今回の新機能はストレージ機能です。Fessを使っていると、別途ファイルサーバとか用意しないでもファイル置き場的な場所が欲しくなるケースもあります。とはいえ、独自に作るといろいろと考えることも多いので、MinIOと上手く連携することで処理できるようにしました。管理画面の全般でエンドポイントとかを指定すれば、管理画面のストレージでファイルにアクセスできるようになります。さらに、ファイルクロール設定でstorage://バケット名/パス的な感じで指定するとクロールすることもできます。試したことはないですが、MinIOはゲートウェイとしてS3やGCSなどにも繋げるようなので、いろいろな使い方ができるはずと考えています。

それ以外のところだと、ライブラリの依存関係を整理したりと細々として変更をいれてあります。どうぞ、ご利用ください。

storage:// を追加

Fess 13.5からはMinIO連携が入る予定ですが、MinIOへのアクセスをstorage://という新たなプロトコルで追加します。なので、ファイルクロールの設定でstorage://バケット名/ とすることでクロールすることができます。

まず、MinIOを以下のような感じで起動しておきます。

docker run -p 9000:9000 \
   -e "MINIO_ACCESS_KEY=AKIAIOSFODNN7EXAMPLE" \
   -e "MINIO_SECRET_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY" \
   minio/minio server /data

Fessのクロール設定的には、たとえば、fessというバケット名であれば

パス:storage://fess/
設定パラメータ:
client.endpoint=http://localhost:9000
client.accessKey=AKIAIOSFODNN7EXAMPLE
client.secretKey=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

という感じになります。あとは、普通にfessバケット配下をインデックスしてくれます。

MinIOはバックエンドで動いている想定なので、検索結果のリンクをクリックすると、Fessのコンテンツプロキシ機能によって、MinIOに直接ではなく、Fess経由で取得することができます。これにより、Fessへのアクセス権限を用いて管理することもできます。

MinIO自体はゲートウェイ機能もあるので、AWS S3を対象にできたり、GCPやAzureなども同様にクロールすることができるようになります。

FessのEOL日付の変更

現在は、バージョンx.y.zのときはバージョンx.y.0をリリースした日付から18ヶ月後にしていたのですが、FessはElasticsearchがリリースされてからちょっと時間が経ってからリリースしていることもあり、Fessより先にElasticsearchがEOLされてしまっている状態になってます。これはこれで微妙だなと前から思っていたのですが、微妙なのでシンプルに、対応するElasticsearchのバージョンのEOLに合わせようと思います。EOL期限以上のサポートが必要な場合は商用サポートを参照してください。