これから、Ubuntu 22.04 LTSでMastodonを動かす機会が増えてくると思いますが、はまったやつを2点、共有しておきます。

■ /home/mastodonのパーミッションが変わり、Mastodonのフロントリソースが読み込めない

Ubuntu 21.04からだそうですが、ホームディレクトリのデフォルトのパーミッションが755から750になっています。

これにより、nginxが/home/mastodon以下を読めず、cssやjsなどが404になります。

sudo chmod 755 /home/mastodon

しちゃっていいんじゃないかな。

■ OpenSSL 3.0環境なのでruby 3.1より前のビルドに失敗する

現行のMastodonはruby 3.1まで大丈夫(とかいてある)ので、3.1.2に変えちゃいます。

cd ~/live
rbenv install 3.1.2
rbenv local 3.1.2

古いMastodonの場合はこれみて。
blog.noellabo.jp/entry/2022/05

Mastodon、無事v4.3.0にはなったんだけど、WEB UIだけが死んでる状態… 誰か助けて

@shorty precompileに失敗してないかな?
fedibird.com/@noellabo/1132747

assets:clobber で全部一度消して、他のプロセスができるだけ止まっていてメモリーに余裕がある状態で、assets:precompileをもう一度実行するって感じ。 [参照]

http error 500になってしまいました… 画面が真っ白です…

フォロー

@shorty clobberは試してみる価値あるね。

あと、/home/mastodon/live/publicにnginxがアクセスできないパターン。
fedibird.com/@noellabo/1083202

これ。
sudo chmod o+rx /home/mastodon [参照]

Precompile中に「Mastodon and Webpacker requires Yarn ">=4 <5" and you are using 1.22.19
Exiting!」と出るのは、何か関係ありそうでしょうか? Yarnが4にアップグレードできなくて、1.22.19を使ってます

@shorty リリースノートには、

corepack enable
corepack prepare

せよってかいてあるけど、これ動く?(~/live で実行)

corepackが有効になってれば、yarnコマンドを実行したときに勝手にアップグレードされるよ。

「corepack: command not found」と出ますね・・・インストールに失敗している・・?

rootで見るとyarnのバージョン4以上なのに、mastodonで見ると1.22なんですよね・・・これは一体??

@shorty mastodonユーザーの環境にインストールされている1.22が、システムに入ってる4以上のyarnを隠してる感じですね……

rootとmastodonユーザーそれぞれで

which yarn

したときにパスが違ってたら、mastodonユーザーの方のyarnを削除すればいけるかも。

path違ったんでmastodonの方のyarnを削除したら、「yarnがないよ」と言われますね・・・今度は入れ方がわからない・・

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。