forked from mastodon/mastodon
-
-
Notifications
You must be signed in to change notification settings - Fork 9
Updation
KMY(雪あすか) edited this page Sep 21, 2023
·
6 revisions
アップデートするバージョン番号を控えておきます
sudo su - mastodon
cd live
git fetch --tags
# LTSをアップデートしたい場合、バージョン名の後に「-lts」がつきます
git checkout kb5.0-lts
# LTSではない最新バージョンにアップデートしたい場合
git checkout kb6.0
# なんかエラーが出る時はこれを試してから再チャレンジ
git reset --hard @
上で新しくなるのはソースコードだけです。サーバーの再起動、場合によってはライブラリのアップデートやアセットのプリコンパイルが必要です。リリースノートも参照して、必要な作業を特定してください。
以下、アップデート作業で使用する代表的なコマンドです。これ以外にも別途、リリースノートでコマンドが指定されている場合があります。
# Rubyパッケージアップデート
bundle intall
# JSパッケージアップデート
yarn install
# DBマイグレーション
RAILS_ENV=production bin/rails db:migrate
# プリコンパイル
# うまくいかない場合(エラーは出ないのにWeb表示が崩れる)はclobberしてからprecompile
# それでもうまくいかない場合はsudo systemctl stop mastodon-webしてから試す
# それでもうまくいかない場合はサーバーOSを再起動してから試す
RAILS_ENV=production bin/rails assets:clobber # プリコンパイルがうまくいかない場合
RAILS_ENV=production bin/rails assets:precompile
# サーバー再起動
sudo systemctl restart mastodon-web
sudo systemctl restart mastodon-streaming
sudo systemctl restart mastodon-sidekiq
また、以下にそうそう使わないコマンドを置いておきます。
# アップデート後、Webの表示がおかしい時に確認する
journalctl -r -u mastodon-web
# アップデート後、Sidekiqでエラーが出る時に確認する
# エラー自体は、管理者のユーザー設定画面のメニューに「Sidekiq」が出るので、そこから調べることができます
journalctl -r -u mastodon-sidekiq
# Rubyのバージョンアップ
# たまにgitリポジトリのpullが必要だと言われることがあるので
# その時は画面に書いてあるコマンドを実行する
rbenv install 3.3.0
rbenv global 3.3.0
# 動作がおかしい時、変なエラーが出る時、いっぺん試してみる
RAILS_ENV=production bin/rails cache clear
# 検索機能の変更を伴うアップデートの時
# ElasticSearchサーバーを移転した時
RAILS_ENV=production bin/rails search deploy
# 以下は、kmyblue独自機能である検索許可を考慮した上で、
# 本家Mastodonよりも広い範囲の投稿を取り込みます。
# ただし処理に非常に時間がかかります。
# 必要に応じて「--from 2023-09-01 --to 2023-09-10」といったオプションを検討してください
RAILS_ENV=production bin/rails search deploy --full true
# yarn installでbufferutil、utf-8-validateがエラーになる場合
sudo npm update -g node-gyp
# SSL証明書の更新
# certbotでSSL証明書を取得した場合、90日ごとに行う必要があります
# 多くの人はCronで自動化しているようです
sudo certbot renew