ごらくらいふ

プログラミングしたりゲームしたり

wildebeestの導入メモ

6月の末から始まったTwitterの大規模制限祭り。そのあおりを受けて一般ツイッタラーである私のアカウントは大変な不便を強いられている。

自前の mastodon を持ってはいるが、無理をして運用している ため、いったん別の手段で分散SNSを持ちたいと考えた。 そこで、以前タイムラインで話題になっていた wildebeest というソフトウェアを思い出した。

zenn.dev

Wildebeest とは

  • Cloudflare社が開発した、ActivityPub および Mastodon互換の分散SNSサーバー
  • 語源はヌー。

サーバーを建ててみた

参考資料は以下のものが参考になった。読みながら進めればほとんどうまくいく。

blog.3qe.us

インストール作業の前にやっておくといいこと

  • Images のプランを契約しておく(最低5$)
  • Workers & Plans のプランを契約しておく(最低5$)
  • Workers の hello world worker を作り、残しておくこと
  • Cloudflare Zero Trust を開き、プランを選択しておくこと(最低0$)

これらを済ませておけば、後述のトラブルシューティングは回避できると考えられる。

トラブルシューティング

公式の資料に、0からやり直す手順が記載されている。なにかを失敗してはこの作業を繰り返すことになるだろう。

github.com

Deploy失敗: Accessへアクセスできない

Error: error creating Access Application for account "***": access.api.error.not_enabled: Access is not enabled. Visit the Access dashboard at https://dash.cloudflare.com/ and click the 'Enable Access' button. (9999)

https://github.com/yajamon/wildebeest/actions/runs/5437347729/jobs/9887831241

Enable Access ボタンを押せとあるが、Accessは 2022/05/25 の時点で Cloudflare Zero Trust に構成が移行したという。

対応
  1. ダッシュボードのAccessから案内されている Zero Trust を起動する
  2. Zero Trustのチームを作成する
    1. 今回、自分のことなので yajamon チームとした
  3. Freeプランを選ぶ
    1. Accessプラン」は「Access」とは別物だ。注意されたい。

クリーン失敗: D1がクリーンできない

  • ワーカーが存在しない場合、Workers & Pages 以下はすべてワーカー新規作成ページに飛ばされる
  • 結果、クリーン対象の D1データベースを削除できなくなる
    • そして、再デプロイをしても失敗する
対応
  • ワーカー新規作成ページの hello world ワーカーを作っておく

クリーン失敗: KVがクリーンできない

  • ワーカーが存在しない場合、Workers & Pages 以下はすべてワーカー新規作成ページに飛ばされる
  • 結果、クリーン対象の KVワーカーを削除できなくなる
    • そして、再デプロイをしても失敗する
対応
  • ワーカー新規作成ページの hello world ワーカーを作っておく

ログイン失敗: ログインの導線がない

  • ログインらしきページが表示されるが、何ができるか分からなかった
  • Zero Trust にアプリケーションがあっても、アクセスポリシーがないとログイン手段を提示できないらしい
対応
  • ポリシーを追加する(Email宛にワンタイムパスワードを発行させることにした)
    • Include: Emails でログイン用のメールアドレスを指定する
    • Require: Login Method で OTP を指定する
    • きちんと保存すること
  • Save Applicationで保存して安心

顛末

自前の wildebeest サーバーを立てることに成功した。

wb.yajamon.com

しかし

  • サーバーを立てることに成功はしたが、どうにも動きが悪い
    • リモートフォローが上手くいくMastodonバージョンと、そうでないバージョンがあるらしい?
    • その他、ActivityPub互換のMisskeyとのリモートフォローが上手くできなかったりした
  • 建ててから確認したところ、wildebeest 自体の更新が 2023/03/27 から止まっている

選択を誤ったかもしれない。まぁ鯖たて作業が面白かったからよし!!