Docker Compose for Elasticsearch

ElasticsearchやKibanaをある程度はきちんとした状態で、手軽に試したいときがあるのだけど、そういうときにはdocker-fessを使っていた。でも、別にFessを使う必要はないし、プラグインとかも調整したいなということで、docker-elasticsearchにまとめてみた。

Elasticsearchだけを起動してみたいときには

$ docker-compose -f docker-compose.yml up

とすれば、localhost:9200でアクセスできるし、Kibanaも一緒に使いたいなー、というときには

$ docker-compose -f docker-compose.yml -f docker-compose.kibana.yml up

とすれば、localhost:5601でKibanaを使えるようになる。

プラグインとかをインストールしておきたいときには

$ ./bin/elasticsearch-plugin install analysis-kuromoji

とすれば、起動したElasticsearchで使えるはず。

今後も必要に応じて、微調整していく気はするけど、これで必要なときにコマンド1つで起動できるから便利になるかな…。

FessのSAML対応

以前に対応しようと思ったときにAzure ADに対応したから良いか、という気分になり、SAML対応を一旦放置してしまったのですが、次のバージョンからSAML対応を入れました。OneLoginのライブラリを使っているので、動作確認とかはここの手順になります。

Fess側の設定としては、system.propertiesに以下のものを書いておけば良いです。値はIdPから取得します。OneLoginであれば、saml.〜はonelogin.saml2.〜に読み替えて、設定してください。

sso.type=saml
saml.idp.single_sign_on_service.url=https\://.../sso/...
saml.idp.x509cert=XBML...(一行にする)...rMdP
saml.idp.entityid=https\://.../metadata/...
saml.idp.single_logout_service.url=https\://.../slo/...

IdP側の設定は、OneLoginであれば以下のような感じで設定します。

あとは、http://localhost:8080/sso/ にアクセスすれば、SSOでログインされます。(SLOは設定しているけど、今のところ、処理してません…)

世の中にいろいろなIdPがあると思うので、何かあればフォーラムとかに投げてもらえればと思います。

注:AudienceのURLが…/metadata/samlから…/metadataに、Single Logout URLが…/logout/samlから…/logoutに変更しました。

Fess 13.8.1のリリース

Fess 13.8.1をリリースしました。13.7.2もリリースしてあります。依存関係の更新も少々しましたが、JAVA_OPTSを参照するのをやめた修正のせいで、Windowsでfess.batから起動できなくなっていたようなので、それに対する修正になります。たぶん、以前からあった問題だったと思うのですが、特定の条件でしか発生しなかったので、発覚しなかったのだと思います。そして、私はWindowsユーザーではないし、Windowsでfess.batで起動するパターンは商用で提供することはないので、気づかなかったという感じ…。Fessはテストケースが多いから商用で使わない部分までのテスト工数をまわすのも難しいところ。この手のは自動化したいところだけど、Windowsだとうまくできる方法があるのかが不明である。という感じで、今回はバグ修正的なリリースでした。