>100 Views
May 23, 26
スライド概要
FediLUG・東海道らぐのLT大会OSC名古屋2026出張版 (2026.05.23) の発表資料です。
「評論・情報」ジャンルで活動している個人サークルです。 主に住宅街や地方の国道沿いなどで見かけるマルフク看板・キリスト看板を題材にした同人誌を作っています。関東地方に大量に看板を出している「きぬた歯科」系列の看板も好きです(ファンクラブ「大日本きぬた連盟」会員)。 お一人様Pixelfedの鯖缶もやっています (2023/8/20~)。
FedifyでActivityPubサーバーを実装して公開してみた モナコ広告 (Fediverse: @[email protected]) FediLUG・東海道らぐのLT大会OSC名古屋2026出張版 2026.05.23
自己紹介 • hira(ハンドルネーム)/ モナコ広告(サークル名) • 赤白の「マルフク看板」と黒の「キリスト看板」などを撮影し、 本を作って同人誌即売会にサークル参加 • FediLUGの勉強会に時々参加 • Fediverseにサーバーを立てて、看板の画像を定期投稿するBotを 作成・運営 • Thinking Penguin Magazine Vol.0 に寄稿 『私と同人活動とFediverse』 2
本日のテーマ • ActivityPubサーバーのソフトを 自作して実際に立てました! 登録された画像を ランダムに投稿 https://bot.signboard.fun/@029bot 3
ActivityPub? • 「分散型SNS」が採用しているプロトコルの一つ • 分散型SNSとは? 分散型SNSは、一つのや個人が管理しているいわゆる中央集権型(Xや Instagram,Facebookなど)と異なり、複数の運営者に分散化・分権化されているSNS です。 分散型SNSでは、複数の種類のSNSが連合として形成されており、同じプロトコルを使 用しているアプリケーションであれば、サーバーが違ってもフォローし合ったり、投稿 を見ることができます。 分散型SNSが形成するネットワークはFediverseと呼ばれています。 分散型SNSユーザー有志 https://fediverse.pcgf.io/ 4
なぜ自分で作るのか • 元々は Concorde (Misskey v12フォーク) でBotサーバーを立てていた • Bot用途に合う適当な実装が意外と見つからない • 小規模なVPSで動かしたいので、軽量化されていることが決め手 • しかしConcordeのメンテナンスが終了してしまった • この通知に気づいたのが2025年12月20日(もう絶望しかない) • 個人メンテされている実装は終了リスクがある • この機会に自分で作った方がよいのではないか? 5
ActivityPub実装のフレームワーク • Fedify というTypeScriptライブラリを使う • APプロトコルに基づく通信の面倒を見てくれる • 盛んに開発・メンテされている • チュートリアルやドキュメントが充実している https://zenn.dev/hongminhee/books/4a38b6358a027b https://fedify.dev/manual/federation 6
全体像 看板Bot @ Fediverse データを登録 (PC操作) 既存のBot管理システム(自作) 今回はここの話→ 投稿画像を ランダムに選び API呼び出し (cron) 看板Bot @ X API呼び出し (cron) 1年前にDB飛ばした発表をしたやつ 7
機能 画像投稿Bot用という前提で、実装する機能を絞る 実装するものの例 実装しないものの例 • ActivityPubに基づく連合 • フォロー送信 • 投稿の新規作成・削除 • リアクション・メンション・引用・返信 の送信 • リアクション・メンション・引用・返信 の受信 • ファイル管理(Misskeyのドライブ相当) • 1人で複数Botの管理 • Web API(Botで使用する機能のみ) 8
リソース使用量 • メモリ消費量、Dockerイメージサイズとも、旧サーバーより削減 新サーバー 旧サーバー (Concorde) 新サーバー 旧サーバー (Concorde) 9
新サーバーの立ち上げ • 2026年3月1日にBotの試験稼働を開始(フォロー受付なし) • リモートから拡散(ブースト)すると超絶重くなるなどの問題を修正 • 2026年4月6日にフォロー開放(着手から約3ヶ月半) 10
そして旧サーバーは無事クローズ 11
ご清聴ありがとうございました ロング版はいつかのFediLUG勉強会で…… 12