コンテンツにスキップ

アップデート

アップデートの確認は、インターネットへのすべての接続と同様に、既定ではオフです。設定 › プラットフォーム › 全般 › 接続 › アップデートを確認でオンにします。確認では公開されたリリースタグを読み取るだけで、インスタンスに関する情報は何も送信されません。

設定 › プラットフォーム › 全般 › 接続

オンにすると、次のようになります。

  • 新しいリリースが公開されると、サイドバーのフッターに アップデートがあります: … と表示されます。
  • 設定 › プラットフォーム › アップデートに、新しいリリースが内容を見るとともに一覧表示されます。
  • 確認は 6 時間ごとに自動で実行されます。アップデートページの更新を確認を押すとすぐに実行され、結果が通知されます。

設定 › プラットフォーム › アップデートのバージョンタブ

バージョンタブには、現在のバージョン、チャネル、最新リリース、アップデーターの状態が表示されます。リリースノートタブには、公開されたすべてのリリースが新しい順に一覧表示され、各リリースの内容と、手動で行う作業がある場合はその内容が記載されています。

設定画面からアップデートする

Section titled “設定画面からアップデートする”

これには 本番スタック の updater サービス(ページに アップデーター: 稼働中 と表示されます)と、アップデートの確認がオンになっていることが必要です。

  1. 設定 › プラットフォーム › アップデートを開きます。利用可能な更新で、リリースの内容を確認します。

  2. … に更新をクリックし、更新で確定します。

  3. ページに各ステップの進行状況が表示されます。バックアップ(データベースがインストールの backups フォルダーに保存されます)、ダウンロード、再起動、確認です。サービスの再起動中、Auditix は 1〜2 分間利用できなくなり、その後ページが自動で再読み込みされます。

新しいバージョンが起動しない場合は、前のバージョンに自動で戻ります。リリースによっては compose.yaml の変更が必要な場合もあります。その場合はリリースノートに記載されており、手動で適用します(アップグレードの注意事項 を参照)。

アップデーターがサービスを再起動する方法は、.env の AUDITIX_VERSION によって異なります。

  • latest(Portainer を含むすべてのインストール):選択したリリースがホスト上の latest になり、アップデーターがそのイメージで Auditix のコンテナーを再作成します。スタックの指定は latest のままなので、Portainer で変更する必要はありません。
  • 固定リリース(vX.Y.Z)で、インストール用フォルダーが /install にマウントされている場合:アップデーターが .env に新しいバージョンを設定し、イメージを取得してサービスを再起動します。

ライセンスに開発バージョンが含まれている場合、アップデートページのチャネルで本番(リリース。既定)と開発(リリースに先行する最新の開発ビルド)を選べます。開発ビルドには未完成の作業が含まれる場合があり、そのデータベースの変更が次のリリースより先に入ることがあります。そのため、本番に戻すと、現在のビルドより新しいリリースが出るまで待つことになります。開発ビルドはテスト用のインスタンスで使ってください。

updater サービスがない場合や、手動で行いたい場合は次のようにします。

.env に新しいリリースを設定し、イメージを取得して再起動します。

.env
AUDITIX_VERSION=v0.13.0
ターミナルウィンドウ
docker compose pull
docker compose up -d
docker image prune -f

backend は、以前のどのリリースからでも、起動時にデータベースの変更を自動で適用します。先にデータベースをバックアップしてください(バックアップ を参照)。

ロールバックするには、以前のバージョンを設定して同じコマンドを実行します。データベースの変更は前にしか進みません。データベースの変更をまたいでロールバックする場合は、アップデート前に取得したバックアップを復元してください。

インストール時のバージョンに応じて、compose.yaml に手動で適用する変更です。

  • 0.11.1 より前にインストールした場合:mercure サービスの MERCURE_EXTRA_DIRECTIVES に cookie_name auditix_live を追加します。これがないと、ブラウザーは低速なリレー経由でリアルタイム更新を受け取り、/.well-known/mercure へのリクエストが拒否されたことをログに記録します。

    mercure:
    environment:
    MERCURE_EXTRA_DIRECTIVES: |
    resource_identifier http://mercure/.well-known/mercure
    cookie_name auditix_live
    transport bolt {
    path /data/mercure.db
    size 1000
    cleanup_frequency 0.3
    }
    heartbeat 15s
  • 0.6 以前:worker サービスを削除し、orchestrator サービスを追加して、worker サービスが残したコンテナーを削除します(docker rm -f <project>-worker-1。Portainer の場合は Containers)。

  • 0.2 以前:x-logging ブロックと各サービスの logging、gateway、rabbitmq、mercure、developer、logs の各サービスとそのボリューム、MESSENGER_TRANSPORT_DSN、GATEWAY_SECRET、RABBITMQ_PASSWORD、MERCURE_JWT_SECRET(openssl rand -hex 32)を、現在の compose ファイル のとおりに追加します。ポートは gateway が公開するようになったため、frontend のポートを削除し、リバースプロキシを使っている場合は gateway の HTTP ポートに向けてください。