Mastodonのアップデートするときにね、だいたい止めないでいけるんだけどさ、
assets:precompileの時はメモリ不足になりやすいので、余裕のない環境の場合は、Mastodon本体とか停止してから実行すると成功しやすいよ。
エラーでてても気が付かないことも多いんだけど、失敗すると、WebUIがみえなくなったりするので、その場合はやりなおし。
assets:clobber して消してから、あらためてassets:precompileね。
あと、データベースの構造が変わった時に行われるmigrate、メジャーアップデートなら必須なわけだけど、
これも、サーバ動作中にやって良い部分と、駄目な部分がある。
これは分離してあるので、こういう環境変数をつけて実行すると、実行中にやっても大丈夫。
SKIP_POST_DEPLOYMENT_MIGRATIONS=true
で、Mastodon本体を再起動してから、今度は環境変数をつけずに実行すると、やってなかった残りの処理をしてくれる。
まあ、最初から止めて実行する分には一度にやっていいんだけどね!
@shorty precompileに失敗してないかな?
https://fedibird.com/@noellabo/113274790979246322
assets:clobber で全部一度消して、他のプロセスができるだけ止まっていてメモリーに余裕がある状態で、assets:precompileをもう一度実行するって感じ。 [参照]
@shorty clobberは試してみる価値あるね。
あと、/home/mastodon/live/publicにnginxがアクセスできないパターン。
https://fedibird.com/@noellabo/108320227318401744
これ。
sudo chmod o+rx /home/mastodon [参照]
@noellabo 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コマンドを実行したときに勝手にアップグレードされるよ。
@noellabo 「corepack: command not found」と出ますね・・・インストールに失敗している・・?
@shorty mastodonユーザーの環境にインストールされている1.22が、システムに入ってる4以上のyarnを隠してる感じですね……
rootとmastodonユーザーそれぞれで
which yarn
したときにパスが違ってたら、mastodonユーザーの方のyarnを削除すればいけるかも。
@noellabo path違ったんでmastodonの方のyarnを削除したら、「yarnがないよ」と言われますね・・・今度は入れ方がわからない・・
@noellabo http error 500になってしまいました… 画面が真っ白です…