2017年7月1日土曜日

流行りに乗ってMastodonインスタンスを建ててみた。(構築編)

 はい、こんにちは。

 最近、俄にMastodon(マストドン)の噂を聞くようになりました。ポストTwitterであるとか、分散型SNSであるとか、いろいろ言われています。
 なぜマストドンが鳴り物入りで持て囃されているのか。その謎を探るべく、自分でサーバーを建てて試してみました。→Rikadon (理科大生募集中です!)

 今回は僕が行ったマストドンの構築方法の説明と、注意事項を書いていきます。なお、細かい説明は記載しているURLを参照してください。

・マストドンのインスタンス構築に必要なもの


・VPS (Ubuntu Server推奨)
・ドメイン(お名前.comなど)
・Gmailアカウント(Mailgunなどの送信サービスも可)
・根気

 マストドンはサーバーで動作させるアプリケーションで、巷で話題のRuby on Railsというフレームワークで動いているようです。それ以外にも必要なコンポーネントはいくつかありますが、マストドンはDockerという環境構築のツールで自動的にそれらを取得し、簡単に環境を整えることができます。
参考:http://qiita.com/jtodo/items/b97afc939d6a86d1cd14

・まずは、サーバーを準備

・VPS(Virtual Private Server)を用意


 適当なVPSを用意します。僕はConoHaというレンタルVPSサービスを契約しました。1GBメモリプランでは月900円かかります。→ ConoHa
 インストールするOSは情報の多さを考えてUbuntu Serverを選択します。

・SSHの設定


 最初にVPSを起動したときは、パスワード認証でログインが可能ですが、セキュリティ上の問題があるので公開鍵認証に切り替えましょう。

・次に、サービスの設定


・ドメインの取得

 固有のアドレスでアクセスできるようにドメインを取得します。僕はお名前.comで取得しました。一年目は10円で維持できますが、二年目で更新する際は高く付くので覚えておきましょう。


・メールサーバーの設定

 アカウントの登録時に通知メールを送信するためのメールサーバーの設定をします。僕は簡単のため、持っていた捨てアドのGmailアカウントを使いました。ただし、Googleアカウントは二段階認証に変更し、アプリパスワードを発行する必要があります。
参考:http://qiita.com/ymmtmdk/items/aa0d300450d370a1eca0

・マストドンの展開


・Dockerのインストール

 インストールするパッケージは実質Docker一つだけです。Docker-ComposeはDockerの補助ツールで、これも同時に取得します。


・マストドンの取得

 マストドンをGitを用いてファイルを取得します。Gitはバージョン管理ツールと呼ばれるもので、アプリケーションの開発プロジェクトなどで用いられています。


・設定ファイルの記述

 設定ファイルに取得したドメインやメールサーバーの設定を記述します。


・マストドンの起動

 必要な設定が完了したら起動します。
参考:https://otya.me/tech/service/masutodon-on-vps-ubuntu/


ここまでやればマストドンが起動することでしょう。管理者権限を取得するには加えて次のコマンドを叩く必要があります。

$ docker-compose run --rm web rails mastodon:make_admin USERNAME={user}
参考:http://qiita.com/shunsuke_takahashi/items/2be610961eb0ada2ad27


・マストドンを建てるとコンピュータの勉強になる!


 マストドンを建てる上で新たに必要になる知識が多くあると思いますが、きっとコンピュータの良い勉強になります。実用性云々は置いといて、Webアプリケーションの勉強を始めてみたい人にはぜひぜひチャレンジしてみてください。質問はコメント欄、Twitterでどうぞ。