Skip to content

アップグレードと移行

オンラインアップグレード(推奨)

管理画面の左下に現在のバージョン番号が表示されます。そこをクリックすると新バージョンの確認とアップグレードが行えます。サーバー側の作業は不要です。

先にデータベースをバックアップしてください。宝塔なら データベース → バックアップ をクリックするだけで、数秒で終わり、いざというときに助かります。

Docker 利用時も同じ手順でアップグレードできます。プログラムのファイルはデータボリュームにあるため、イメージを入れ替える必要はありません。

手動アップグレード

オンラインアップグレードが失敗したときだけ使います。現在のバージョンから順に 1 つずつ適用してください。バージョンを飛ばすことはできません。

アップグレードパッケージの中身は次のとおりです。

内容対応
file/ ディレクトリ中身をサイトルートにコピーして上書き
update.sqlデータベース変更がある場合のみ存在します(下記参照)

update.sql の扱い:

  1. エディタで開き、__PREFIX__ をすべて自分のテーブル接頭辞(既定は acg_)に置換する
  2. phpMyAdmin などのクライアントで SQL を実行する

すべて適用したら、config/app.phpversion をアップグレード後のバージョン番号に書き換えます。

手動アップグレードは間違いが起きやすいので、オンラインアップグレードが使えるならそちらを使ってください。

サーバー移行

  1. ソースをアーカイブ — サイトディレクトリ全体
  2. データベースをエクスポート — phpMyAdmin か mysqldump
  3. 新サーバーに宝塔ガイドに沿って環境を用意(PHP バージョンと拡張を揃える)
  4. ソースを新しいサイトルートに展開し、データベースをインポート
  5. config/database.php を編集して、新しいホスト・ユーザー・パスワードにする
  6. URL 書き換えとディレクトリ権限を設定し直す

移行後に開けない場合は、この順で確認します。

確認項目内容
config/database.php旧サーバーの情報のままになっていないか
Redis旧サイトが Redis にセッションを保存していたなら、新サーバーにも導入するか、PHP のセッション保存先をファイルに戻す
PHP 拡張bcmath を忘れずに
権限configruntimekernel/Installassets/cache が書き込み可能か
URL 書き換え新サーバーでは設定し直しが必要

Docker イメージの入れ替え

bash
docker pull ghcr.io/lizhipay/acg-faka:latest
docker stop faka && docker rm faka
docker run -d --name faka -p 80:80 -v acg_data:/data --restart unless-stopped ghcr.io/lizhipay/acg-faka:latest

acg_data というボリューム名さえ変えなければ、データ・設定・導入済みプラグインはすべて残ります。

アップグレード後に不具合が出たら

まずサイトルートの runtime.log を読んでください。原因はほぼそこに書かれています。

MIT ライセンスで公開