コンテンツにスキップ

アップデート

はじめての方

HolyArrs は新しいバージョンが出たことを知らせますが、自動でインストールすることはありません。都合のよいときに、自分で新しいイメージを pull します。

新しいバージョンが出ているか確認する

新しいバージョンが出ているか確認する へのリンク
  1. Status(ステータス)ページ(http://your-server:6262/health)を開きます。
  2. Updates(アップデート)を読みます。次のいずれかが表示されます。
メッセージ 意味
“HolyArrs 1.2.0 is out, newer than this one.”(HolyArrs 1.2.0 が出ています。このバージョンより新しいものです) 都合のよいときにアップデートします
“This is the newest version.”(これが最新バージョンです) することはありません
“No HolyArrs release is published yet.”(HolyArrs のリリースはまだ公開されていません) フィードが空です。問題はありません
“The last check did not work: …”(前回の確認に失敗しました: …) フィードに到達できませんでした。多くはインターネットに接続できていない場合です
“The update check is off: …”(アップデートの確認はオフです: …) 設定でオフにしています
  1. 今すぐ確認するには、Check now(今すぐ確認)、または Check again(もう一度確認)を選択します。Change settings(設定の変更)の権限が必要です。

新しいバージョンがあると、ヘルスチェックの警告としても表示されます。確認の失敗は Updates の下にだけ表示されます。

  1. 新しいイメージを pull して再起動します。docker compose pull を実行し、続けて docker compose up -d を実行します。
  2. HolyArrs が起動します。新しいバージョンでデータの保存方法が変わる場合は、先にバックアップを作成してからデータを更新します。新しいバージョンでアプリが開きます。

HolyArrs は自分のイメージを変更できません。そのため、前のイメージを自分で起動し、HolyArrs が前のデータを元に戻します。

  1. compose ファイル(または docker run)のイメージタグを前のものに変更します。たとえば holyarrs/holyarrs:<older version> です。
  2. docker compose up -d を実行します。
  3. アップデートでデータが変更されていなければ、前のバージョンが起動します。これで完了です。
  4. そうでない場合、前のバージョンはアプリの代わりに 1 枚のページを表示します。Put back the data from before the update(アップデート前のデータに戻す)を選択します。
  5. ワンタイムコードを入力します。コードは docker logs <container> で確認できます。“one-time code” を探してください。
  6. HolyArrs がバックアップを確認し、元の場所に戻してから停止します。コンテナは再起動ポリシーによって、そのデータでもう一度起動します。再起動ポリシーがない場合は、自分で起動します。

ページを使わない場合: docker exec <container> /holyarrs restore --pre-update を実行し、続けて docker restart <container> を実行します。Docker を使っていない場合: HolyArrs を停止し、holyarrs restore --pre-update を実行してから起動します。

削除されるものはありません。新しいほうのデータは backups/before-restore-<time>/ に移動するので、元に戻せます。2 つ以上前のバージョンに戻す場合は、そのバージョンが読めるアップデート前バックアップのうち、最も新しいものが使われます。

すべて Settings > Health checks にあります。最後の 3 つは、カードの詳細設定の中にあります。

設定 既定値 変更する場面
Check for a newer HolyArrs(新しい HolyArrs を確認する) オン 外部へのリクエストを一切送りたくない
Check for updates every(アップデートを確認する間隔) 1 日 確認の回数を減らしたい: 3、7、14、30 日
Release feed(リリースフィード) 空(HolyArrs のリリース) 自分でフィードをホストしている
Feed may be on the local network(フィードがローカルネットワーク上にあってもよい) オフ フィードが自分のネットワーク上にある
Include test versions (like 1.2.0-rc1)(テスト版を含める。1.2.0-rc1 など) オフ テスト版のお知らせも受け取りたい

症状: “The last check did not work.” と表示される。 原因: サーバーがインターネットに接続できていないか、自分のフィードがローカルネットワーク上にあります。 対処: インターネット接続を確認するか、Feed may be on the local network をオンにします。

症状: リリースフィードを保存できない。 原因: アドレスに名前、パスワード、?query、#fragment が含まれているか、http:// または https:// で始まっていません。 対処: その部分を取り除きます。

症状: 空き容量が足りず、アップデートが止まった。 原因: コピーとアップデートに必要な空きがありません。 対処: 設定フォルダーのある場所の空き容量を増やしてから、もう一度起動します。

症状: 前のバージョンに戻すページでコードが拒否される。 原因: 古いコードを使っているか、最後の起動から 10 回間違えています。 対処: ログの最新の行からコードをコピーします。10 回間違えたあとは、コンテナを再起動して新しいコードを使います。

このリリースでは、一部の機能が既定でオフになっています。オンにする場合は自己責任で行ってください。オフの間は、その機能のページとメニュー項目は表示されず、API ルートは “not found” を返し、ジョブも実行されません。その機能用に保存したデータは残ります。

オンにするには、その機能のスイッチを HOLYARRS_FLAGS にカンマ区切りで追加し、コンテナを再起動します。

environment:
HOLYARRS_FLAGS: "subtitle_sites,alert_channels_more"

オフにするには、名前を取り除いて再起動します。非表示になった設定は、もう一度オンにすると戻ります。

スイッチ 機能
plex_watchlists Plex のウォッチリストがリクエストになります
row_title_stats Appearance にある、Explore の行のタイトル統計
trakt_lists Trakt のキー、Trakt のリスト、Trakt のレビュー。TMDB のリストはオンのままです
alert_channels_more Telegram、ntfy、Gotify、Pushover、Webhook の通知。Discord とメールはオンのままです
subtitle_sites 字幕サイトと字幕の検索。字幕の言語はオンのままです
emby_signin Emby でのサインイン。Emby のライブラリ更新は引き続き動きます
go_back Status ページの Go back(前のバージョンに戻す)パネル。前のバージョンに戻すの手順は、これがなくても使えます

スイッチを追加しても何も変わらないときは、つづり(小文字、アンダースコア)を確認し、ページの再読み込みだけでなくコンテナを再起動してください。

確認のときに送信される内容

最新のリリースを調べるために api.github.com へリクエストを 1 回送ります。付けるのは User-Agent: HolyArrs/<version> だけです。アカウント、キー、メディアの一覧は送りません。確認をオフにすると、リクエストは一切送られません。

前回の応答は保存されるので、再起動しても予定の時刻より前に確認することはありません。1 回の確認は、待ち時間が最大 15 秒、読み込みが最大 512 KB、リダイレクトは最大 3 回までで、http と https をまたぐことはありません。リリースノートのリンクが表示されるのは、GitHub 上の HolyArrs のリリースページを指している場合だけです。それ以外では、バージョンは通常のテキストとして表示されます。

Release feed に使えるのは、GitHub 形式のリリース応答、リリースの一覧、version を含む任意の JSON、またはバージョンが入ったプレーンテキストです。クラウドのメタデータアドレスは必ず拒否されます。テスト版は、同じ番号の通常バージョンより古いものとして扱われます。

アップデート前のバックアップ

保存されたデータを変更する前に、HolyArrs は次のことを行います。

  1. コピーとアップデートに必要な空きがあるか確認します。足りなければ、何も変更しません。HOLYARRS_SKIP_SPACE_CHECK=yes でこの確認を省略できます。
  2. 各データベースを backups にコピーし、コピーを検証して、sha256 ファイルを横に書き出します。コピーに 3 回失敗すると、何も変更しません。
  3. アップデートの各手順を 1 つずつ実行し、検証します。失敗した手順は取り消され、完了した手順はそのまま残ります。同じバージョンをもう一度起動すると、同じコピーを使って、失敗した手順から続けます。

最初に正常に起動したあと、コピーは holyarrs-backup-pre-update-<time>.zip になり、“before updating from 1.1.0 to 1.2.0” のような説明が付きます。Settings > Backups と holyarrs restore --list に表示されます。新しいものから 3 つが残り、バックアップのスケジュールで削除されることはありません。新規インストールや、データを変更しないアップデートでは作成されません。

HolyArrs は無料です。時間の節約になったら、GitHub でスターを付ける、スポンサーになる、コーヒーをおごるのいずれかで応援してください。