おひとり様ActivityPub実装Holloを始めた

おひとり様向けのActivityPub実装HolloをGCP無料枠で建てた感想

Holloを始めた

Holloを始めた。
おひとり様向けのActivityPub実装で昨年に登場した新しいソフトウェアだ。
リリース当初から気になってはいたが、もう少し安定してから手を出そうと思い数ヶ月経った。
ちらほらとHolloを始めたという声が流れてくるようになったので、重い腰を上げてサーバー構築をした。

Holloの用途

私はMisskeyサーバーをいくつか運用している。それらのメンテナンスや障害情報をお知らせするアカウントを、MisskeyからHolloに移設しようと考えた。
できたものが、アナヒビソーシャルである。
Misskeyからの引越しは少々つまづくことはあったが、それを除けば問題なくスムーズに行えた。

サーバースペックについて

まだ連合先とのやりとりが少ないからか、Holloのメモリ消費量は200MB程と軽量である。
これならGCPの無料枠(e2-micro)でも動かせるぞと、nginxとpostgresqlとdockerを入れて、Holloを動かすことに成功した。
今の所は問題なく動いている。オブジェクトストレージを有効化しアイコンもつけた。
データベースのバックアップも取るようにしたので、サーバーが壊れても復旧はできると思う。

インストールのメモ書き

Holloのインストール手順は日本語のドキュメントがあるが、やはり自分の環境ではそのままでは動かせなかったので、いくつか手を加える必要があった。
.envファイルを読み込ませるのに手こずったが、ボリュームでマウントすれば済んだ。
nginxの設定に手間取ったが、Misskeyの例を参考にしたら上手く動いた気がする。
トップページのURLをリダイレクトさせることができるが、下手に設定すると無限にリダイレクトしたり、ログインに失敗することがあるので、いじらない方が良いかもしれない。
あと、docker compose pullすると開発版がインストールされる。安定版じゃないと気づいたのは、正式運用を始めた後からだった。特に支障はないので、しばらくは開発版(v0.6.0-dev.14)を使い続ける。

HolloにはGUIがない

Holloは専用のGUIがないため、マストドンのクライアントを使って、投稿やフォローをする必要がある。
Hollo独自の管理画面はあるが、v0.6の段階ではアカウントの追加削除、絵文字の追加削除、2FAの有効化くらいしかできない。シンプルだ。
簡易的でもタイムライン表示や投稿できてくれた方がありがたさはあるが、メモリ使用量が増えても困るので、現状うまいこと使えているし、このままでいいだろうと思う。

ただ、phanpyでプロフィールのアイコンを設定しようとしたら、ヘッダー画像も設定しないと保存できなくて困った。
仕方なく、ヘッダー画像を設定したが、Holloのプロフィール画面を見るとヘッダーがデカデカと表示されて格好が悪い。結局データベースをいじって消した。
Issueを眺めると、引越し機能のユーザーが多いと処理が失敗するような記載があったりと、メインでガシガシ使うには怖い所はあるが、まだ1.0じゃないし多少の仕様変更や不具合は仕方ないと思う。気長に付き合っていけたらなと思う。

個人的に気になる不具合系

まず、Misskeyからのアカウント引越が失敗することに気づいた。
色々触ったところ、暫定回避策として、Hollo側のアカウントに’Known As’のaliasを2つ以上設定することで、アカウントの引越しが機能する。
HolloとMisskeyの双方にIssueを起票したが、修正されるかはわからない。

あと、オブジェクトストレージに連合先の画像を溜め込んでしまう仕様が存在する。
自分では画像をアップロードしてないのに、ストレージ使用量が増えていくのは、維持費の点からするとマイナスだと思う。(別視点だが、児ポなんかがキャッシュされたらまずい。)
こちらもIssueを起票はしたが、対応されるかはわからない。詳しくはAbility to purge images cached in object storage · Issue #141 · fedify-dev/holloを追跡してほしい。

あとがき

Misskeyをおひとり様で使うには機能が多すぎ、サーバーリソースの消費も多いから勿体無いと感じることはあった。
もちろん、Misskeyにはアンテナ機能や、キャッチーで見やすいWebUI、何より利用者が多いことによる知見の共有のしやすさなど利点も多い。
Holloはリソースの消費も少ないから、ActivityPubに自我を流しつつシンプルで投稿と閲覧ができれば良いと思っているおひとり様の一つの選択肢になる気がする。
特にGCPの無料枠で動くのは強みだと思う。ドメイン代を除けばほぼ無料で自分のサーバーが持てるのは、維持費を気にする方には朗報だろう。
個人的には、ブラウザでアクセスしたHolloの画面が、シンプルなノートのような感じで気に入っている。

Hugo で構築されています。
テーマ StackJimmy によって設計されています。