分散型SNS(Misskey)のサーバーを建てた
2023年7月初頭からTwitterがまた騒ぎになっている。 主要なAPIに厳しい制限が課されたらしく、日々Twitterに張り付いているユーザーにとって辛い状況となった。 2月の記事(過去、Twitter、未来)にも書いたように、Twitterが何かやらかすと 移住先を検討するムーブメントが起きる。人気の候補はMastodonやMisskeyといった「分散型SNS」だ。 私も2月の記事の最後でPawooとMisskey.ioのアカウントを掲載した。
しかし、この2つを避難先として落ち着くことは……なかった。 急激にTwitterからの移民が増え、サーバーが耐えられなくなったのか Pawooもmisskey.ioもタイムラインが長時間見えない状態が続いてしまったのである。 そこで浮上したのが自前で分散型SNSを運用するセルフ・ホスティングという選択肢だ。
2月の記事にも書いたように、セルフ・ホスティングはコスト(時間・お金)がかかる。 だからそういう選択肢があるとは知りつつも避けてきた。 しかし、避難先として作ったはずが本当に避難したいときに重くて使えないという最悪な状況になるくらいなら、 コストをかけてでも自前で管理する避難所を持っておいたほうがマシだろうという判断に至り、セルフ・ホスティングの道へ進むことにした。
p-honeひとり用Misskey1サーバー「萌えアニメ2」の誕生である。
設置の流れは大まかに次の通り。
- 固定のIPアドレスを持つLinuxサーバーを一台借りてくる
- ひとり用のサーバーなのでスペックは小さめ(1 vCPU, 2 GB memory)
- 私はVultrを使ったが、各自好きなサービスを使えばよい
- Cloudflare から TCP:80 へのファイアウォール許可ルールを追加
- Docker Composeを使ったMisskey構築に従ってMisskeyを立ち上げる
- ポート番号を
:3000
から:80
に変更
- ポート番号を
- Cloudflareでドメインを登録し、LinuxサーバーのIPアドレスに対してDNS A recordを作成する
- TLS encryption mode: Flexible に設定
- CDNの設定に従って
/api/*
のURI Pathをキャッシュ除外ルールに追加
- 画像のアップロード先をCloudflare R2に
- 画像投稿を多用する予感がしたので、Linuxサーバー内ではなく外部のストレージに頼りたい
- 以下の記事が参考になった
- misskeyのオブジェクトストレージにcloudflare r2を利用する - Qiita
これでMisskeyが動作し、アカウント: @[email protected]を作成した。
分散型SNSの魅力は他のサーバー相手でもフォロー可能なことだ。
よって、もしあなたがMastodonやMisskeyなどのActivityPub互換サーバーにいる場合、ユーザー検索に https://moeanime.io/@p__hone
と入れると萌えアニメサーバーのp-honeをフォローできる。
セルフ・ホスティングMisskeyを運用してみての所感
セルフ・ホスティングの分散型SNSにはメリットがいくつかある。 まず、サーバーの管理人が自分自身なので、不当な仕様変更や凍結、コンテンツ規制の心配がない。 なんならMastodonやMisskeyはソースコードも公開されているので知識さえあれば改造もやり放題だ。 SNSの運営に文句を言う必要はもうなくなるのである。 Twitterからの移住先として真っ先に候補に上がる所以はこれに尽きるだろう。
しかし同時に、自分自身ですべてを管理しなければならないとも言える。 借りたサーバーが何らかの原因で故障すればSNS世界は崩壊する。そうなると修復は自分でやらなければならない。
そして、あくまでここは避難先であって Twitterの完全な代替にはならない。 たとえUIは似ていても分散型と中央集権型は根本的な作りが違いすぎるからだ。 たとえば幅広いユーザーに対する検索機能や告知・宣伝の広い拡散性といった目的達成は分散型での実現は難しい。 Twitterのような規模にはなれないが、Discordよりは開けた小規模なSNS程度の認識で捉えておくのが良いだろう。
でも、パソコンばかりいじってるオタクとしては自身で建てたSNSを持っているという事実は なんだかワクワクするし、自分だけのサーバーを運用・改造するという作業も植物を育てているような感覚があり楽しさもある。 Twitterの惨状がいつまで続くかはわからないし、 この「萌えアニメ」サーバーがいつまで続けられるのかはわからないが一度は自前でサーバーを構築したという経験は今後インターネットをやっていく上で無駄になることはないだろう。
セルフ・ホスティング仲間を増やしたいな〜という気持ちもあるので、 もし構築運用方法について聞きたいことがあれば @[email protected] やTwitterのDMに連絡をいただければサポートしたい所存です。
脚注