HyperEstraierコンテナを作る先日、自作のメーラ「maverick」のコンテナイメージを構築し、VPS上で動作させ、そこそこ快適にウェブメール環境を利用できているのだが、全文検索機能が実装できていないのがイマイチなのであった。個人的に、全文検索機能と言えば「HyperEstraier」なのだが、最近のFedoraには、リポジトリにパッケージこそ存在しているものの、インストールしてもロクに動作しないのである。誰も使っていないから気づいていないのかしらん。そんなことある?他に代替できるような全文検索機能もないので、是が非でも動かしたいのだが、ウェブ上に類似の問題の報告は見当たらず、オフィシャルには開発も終了してしまっているようである。しゃーないので、自分でビルド環境を整え、ガチで原因調査を始めたところ、必須ライブラリであるQDBM内の、メモリ確保系のコードで落ちてしまっているところまではわかった。checkで落ちてしまう。コードがおかしいという感じもせず、なんというか、単にmallocとの相性が悪いようにも見える。修正の方策も浮かばない。しかたなく、QDBMのちょっと古い版である1.8.75を持ってきて動かしてみたところ、問題のコードが異なっており、その状態なら問題なく動いた。いうわけで、安直にそっちの版で動かし、解決としてしまうことにした。「maverick」のコンテナイメージに「HyperEstraier」を組み込もうかと思ったのだが、そこは「HyperEstraier」だけのコンテナイメージを作った上で、それをベースに「maverick」のコンテナイメージを作るべきだろうと思い返し、そのように実装してみたらうまくいってしまった。いうわけで「DockerHub」に「docker.io/furutanian/hyperestraier」と「docker.io/furutanian/maverick」としてアップロードしておく。今後、このブログもコンテナ化したいと思っていたのだが、ここも全文検索機能を使っているので、同じように「tdiary」のコンテナイメージを作れるという見通しが得られたことになる。Lightsail」上でゴタゴタと作業していると、コンテナのビルド中にdnfが謎のエラーを起こすようになってしまった。なんのことはない、メモリ不足だ。その安定の実績からさくらのVPSは我が本命なのだが、コンテナの開発くらいの用途なら、安物でいい。探すとWebArenaのVPSが同価格でメモリ1GBということらしく、そっちを契約して移行することにした。WebArenaは使い出してしまえばともかく、使い始めがムッチャわかりにくいな。オレオレ仕様が多すぎる。しても、サービスをコンテナ化すると移行が異常なほどに容易だ。非常に安直なVPS選びが可能になる。気に入らなきゃ、すぐに移行してしまえばいいのだ。なんつうか、以前、回転寿司に入ってひと皿食ったらマズかったので、すぐに精算して、向かいの回転寿司に移動したことがあったことを思い出した。1.8.7-p357。