Edited at

MastodonインスタンスのDBを、Amazon Aurora にするのは面倒だった件

More than 1 year has passed since last update.

最近はやりのMastodon。コードを見たらPostgreSQL前提だったので、Amazon Auroraで動くように書き換えて、

EC2(Amazon Linux) + RDS(Aurora) + ElastiCache(Redis) で動かしてみました。

動かした結果は↓

https://now.kibousoft.co.jp/

以下のmasterブランチにコードをアップしています↓

https://github.com/kibousoft/mastodon/

pgheroを取った以外は、主にmigrationの修正なのですが、ポイントとしては


  • Aurora / MySQLではTEXTに対してDefault valueが設定出来ない

  • Foreign Keyが設定済の状態ではChange Column出来ない

  • Aurora / MySQLでIndexを張れるカラムの最大長は767bytesまで。そのためVARCHARに対してlimitを設定してやる必要がある。utf8mb4の場合、limit: 191を設定すればOK

  • jsonとか特殊型はそもそも無いのでtextとかに変える

なので、この辺をひたすら直す感じ。

今後 PostgreSQL→Aurora / MySQL に移行する何かがあったら役立ちそう。

(余談1)

本家はPumaみたいなんですが、自分はunicornのほうが好きなので、今回unicornで動かしました。

unicornでも今のところ問題なさそうです。

(余談2)

今回立てたMastodonインスタンス「Kibousoft Now」では、絶賛ユーザー募集中です。

せっかく立てたので、どうせなら盛り上がったら良いなあ(無理そうだけど)

https://now.kibousoft.co.jp/