分散型SNS「Mastodon」の技術に触れる『さくらの夕べ マストドン テクノロジーナイト』レポート

こんにちは、さくらインターネットの大喜多です。さくらインターネットでは4月から話題になった分散型SNS「Mastodon」に対して、「mstdn.jp」の支援を実施したり、さくらのクラウドで簡単にMastodonインスタンスが立てられる「スタートアップスクリプト」を提供するなどの様々な取り組みを実施しています。6/28に「さくらの夕べ マストドン テクノロジーナイト」と題して、Mastodonの技術についてのセッションを中心としたイベントを開催致しました。本記事ではイベントの各セッションのポイントについてレポート致します。

ハンズオン

イベントに先立って、さくらインターネット テクノロジー・エバンジェリストの前佛が講師となり、DockerとDocker Composeを利用したMastodonインスタンスの構築ハンズオンが行われました。

ハンズオンの手順はこちらのリンク先をご参照ください

「さくらインターネットとマストドン」

さくらインターネット エバンジェリストの横田より、さくらインターネットにおけるマストドンへの取り組み、さくらインターネットのサービスでどのぐらいマストドンのインスタンスが立てられているのか?等の発表がありました。

事業者別Mastodonインスタンス数(横田調べ)によると、27%がさくらインターネットのサービスを利用して構築されており、事業者別ではトップとのこと。

この背景として、スタートアップスクリプト提供によるインスタンス構築の簡略化、mstdn.jpの支援による注目度の向上、エンジニアの情報発信などによるものではないかと分析していました。

また、mstdn.jpの支援が非常にスピーディーに進んだ経緯として、スタートアップ支援が自社の文化として根付いていることを理由として挙げていました。

横田さんの発表資料

「マストドンが簡単にインストールできるスタートアップスクリプトについて」

「さくらのクラウド」では、マストドンを簡単にインストールできるスタートアップスクリプトをご用意しております。このスタートアップスクリプトの仕組みについて、開発者である さくらインターネット技術本部ミドルウェアグループの根本から解説がありました。

根本さんの発表資料

Mastodonインスタンスをセットアップできるスタートアップスクリプトについて from さくらインターネット株式会社

「自宅サーバでマストドンを立てる」

ヨッピー氏のMastodonインスタンス「hokutodon」の構築に携わった、さくらインターネット技術本部アプリケーショングループの芦野より、Mastodonを自宅サーバで運用する際のコツや、インスタンスを停止する際に気をつけることなどについての発表がありました。

芦野さんの発表資料

「Docker ComposeでMastodonが必要なものを梱包する話」

さくらインターネット テクノロジー・エバンジェリストの前佛より、DockerとDocker Composeを利用したMastodonインスタンスの構築・運用についての発表がありました。

Mastodonでは、公式のdocker-compose.ymlファイルもソースコードに含まれていますが、以下の観点でアーキテクチャを再設計し、独自にdocker-compose.ymlファイルを作成したとのことでした(今回のハンズオンでも使われておりました)。

  • 公式のdocker-compose.ymlに含まれていない、certbot・nginx・eximなどを追加し、完全に動作するように拡張
  • 将来的にコンテナごとにホストを分けられるようストレージ構成を変更

前佛さんの発表資料

Docker ComposeでMastodonが必要なものを梱包する話 from Masahito Zembutsu

まとめ

Mastodonに関しては、その社会的な意義や、大規模インスタンス運用事例など、多くの情報が展開されている状況ですが、今回のようにホスティング事業者がインスタンスをたてる個人向けに技術情報を提供したイベントとして、その特色が出ていたように感じました。また、8/10には、私、大喜多が執筆した技術書であるMastodon入門ガイドが出版される予定です。さくらインターネットの今後の取り組みにも是非ご注目ください。