マストドンの完成

完成しました。以下は教訓の羅列です。役立ててください。

 

Ubuntu LXDコンテナ上にdocker敷いてmastodon立てるのは無理。いや無理じゃないかもしれないけど、その環境に入るdockerエンジンはおそらくdocker.ioだ。最新バージョンのmastodonとは相性が悪いぞ。俺みたいな素人がやるんだったら、素直に生dockerでやったほうが早いし確実。どうしても物理マシンから分離したいなら仮想化してしまったほうがマシでは?

 

ぜんぶリセットしたいときでもdocker-compose downだけはマジでやめろ。まずnginx -s reload。次にup -dをしてみてダメならbuildしてからup -dをしろ。それでダメならdbコンテナのリビルドとasset:precompileをやれ。downだけはするなこわれる

 

関係ファイルが保存されるパス、つまり画像とか永続化されたDBデータとかはdocker-compose.ymlにぜんぶ載ってる。落ち着いて読め。

 

2017年5月30日現在のtootsuite/mastodon最新バージョンである1.4.1において、cronタスクはSSL証明書更新以外必要ないと思われる。キャッシュ削除も購読更新もぜんぶsidekiqがやってる。recurring_jobsをみてみろ

 

画像がアップロードできないときは(かつマストドンを/var/www/とかに置いてる場合)、mastodon/public/systemとかのパーミッションに問題がある。chmod 777しないでchownで所有者をそれっぽいやつにかえろ(992みたいな)

 

マストドンにサービス管理者としてログインしてsidekiqをみよう

 

SMTPサーバはGmailの普通のパスワードでやろうとすると無理。横着せず2段階認証とアプリパスワードをとろう。.env.productionのSMTP認証関係の設定もちゃんと確認しよう。

 

連合タイムラインが寂しい時。連合タイムラインに表示される(他インスタンスから購読する)のは、ローカルユーザがフォローしているユーザすべて。誰かがリモートフォローしまくればタイムラインは見かけ上だけでも賑わうぞ。

 

以上です。