メインコンテンツへスキップ

概要

CaseBender はバージョン管理されたコンテナイメージのセットとして提供されます。 アップグレードとは、最新のイメージを取得してコンテナを再作成することです。データ、 ライセンス、設定は 名前付き Docker ボリューム.env ファイル に保存され、 どちらもアップグレード時に保持されます。そのため、これらを維持している限り、 アップグレードでケース、ユーザー、資格情報、ライセンスが失われることはありません。
データベースのマイグレーションと既定データのシードは、アップグレード後の起動時に 自動的に実行されます。マイグレーションコマンドを手動で実行する必要はありません。

アップグレード時に保持されるもの

本番システムで docker compose down -v を実行しないでください。-v オプションは すべての名前付きボリューム(データベース、ライセンス、ファイル)を削除します。 これらのボリュームがないと、次回の起動で新しいデータベースが作成され、管理者パスワードが 既定値にリセットされ、ライセンスが再生成されます。

アップグレード手順(Docker Compose)

1

データベースと .env をバックアップする

2

最新のイメージを取得する

3

コンテナを再作成する

Compose はイメージが変更されたサービスのみを再作成し、ボリュームは保持します。
4

ログを確認する

マイグレーションとシードは起動時に実行されます。アプリが正常(healthy)になるまで 待ってください。

アップグレード後の確認

  • サインインして、既存のケース、アラート、ユーザーが存在することを確認します。
  • ログインが引き続き機能することを確認します(管理者パスワードは変更されません)。
  • worker がジョブを処理していることを確認します。

ロールバック

問題が発生した場合は、以前のイメージタグを固定してバックアップを復元します。
必ず先にステージング環境でアップグレードし、本番のアップグレード直前に最新の データベースバックアップを取得してください。

よくあるアップグレードの誤り

最もよくある 2 つの問題は、いずれも状態の喪失に起因します。
  • Compose のプロジェクト名やディレクトリを変更する。 Docker はプロジェクトから ボリューム名を導出します。フォルダー名を変更したり、別の -p プロジェクト名を 使用したりすると、Compose は 新しい空の ボリュームを参照します。既存のボリュームを 再利用するため、常に同じディレクトリ/プロジェクトからアップグレードしてください。
  • LICENSE_SECRET_KEY が未設定で、casebender_secret ボリュームもない。 永続的な シークレットボリュームがない古いデプロイでは、ライセンスが維持されるよう .envLICENSE_SECRET_KEY を設定してください(またはボリュームを追加)。現在のデプロイでは 自動的に保持されます。

デスクトップインストーラー

デスクトップインストーラーでデプロイした場合は、アプリ内蔵の更新フローを使用して ください。最新のイメージを取得し、データディレクトリ、.env、ライセンスキーを保持 したままサービスを再作成します。

Google Cloud Run

Cloud Run のアップグレードは新しいリビジョンをデプロイします。Cloud Run の ファイルシステムは一時的(エフェメラル)であるため、リビジョン間で保持されるよう、 ライセンスシークレットは Secret ManagerLICENSE_SECRET_KEY として提供する 必要があります。既存の Cloud SQL インスタンスとシークレットに対して再デプロイします。
マイグレーションは新しいリビジョンで自動的に実行されます。