Eiti prie turinio

Atnaujinimai

Naujokui

HolyArrs praneša, kai išeina nauja versija, bet pats jos niekada nediegia. Naują image atsisiunti tada, kai tau patogu.

Pažiūrėk, ar išėjo nauja versija

Nuoroda į Pažiūrėk, ar išėjo nauja versija
  1. Atidaryk puslapį Status (būsena) (http://your-server:6262/health).
  2. Perskaityk Updates (atnaujinimai). Turėtum pamatyti vieną iš šių pranešimų:
Pranešimas Reikšmė
„HolyArrs 1.2.0 is out, newer than this one.“ Atnaujink, kai bus patogu
„This is the newest version.“ Nieko daryti nereikia
„No HolyArrs release is published yet.“ Srautas tuščias. Nieko blogo nenutiko
„The last check did not work: …“ Srauto nepavyko pasiekti, dažnai nėra interneto
„The update check is off: …“ Išjungta nustatymuose
  1. Jei nori paklausti dabar, paspausk Check now (tikrinti dabar) (arba Check again (tikrinti dar kartą)). Tam reikia teisės Change settings (keisti nustatymus).

Nauja versija rodoma ir kaip būklės įspėjimas. Nepavykusi patikra rodoma tik skiltyje Updates.

  1. Atsisiųsk naują image ir paleisk iš naujo: docker compose pull, tada docker compose up -d.
  2. HolyArrs pasileidžia. Jei nauja versija keičia duomenų saugojimo būdą, pirmiausia sukuria backup, tada atnaujina duomenis. Turėtum pamatyti programą atsidarant jau nauja versija.

Grįžk prie ankstesnės versijos

Nuoroda į Grįžk prie ankstesnės versijos

HolyArrs negali pats pakeisti savo image, todėl paleidi ankstesnį image, o HolyArrs grąžina ankstesnius duomenis.

  1. Pakeisk image tag savo compose faile (arba docker run) į ankstesnį, pavyzdžiui, holyarrs/holyarrs:<older version>.
  2. Vykdyk docker compose up -d.
  3. Jei atnaujinimas duomenų nepakeitė, ankstesnė versija paleidžiama. Baigta.
  4. Kitu atveju ankstesnė versija rodo puslapį vietoj programos. Paspausk Put back the data from before the update (grąžinti duomenis, buvusius prieš atnaujinimą).
  5. Įvesk vienkartinį kodą. Jį rasi su docker logs <container>; ieškok „one-time code“.
  6. HolyArrs patikrina backup, įdeda jį į vietą ir sustoja. Turėtum pamatyti, kad konteineris vėl paleidžiamas su tais duomenimis per savo paleidimo iš naujo politiką. Jei jos nėra, paleisk pats.

Be to puslapio: docker exec <container> /holyarrs restore --pre-update, tada docker restart <container>. Be Docker: sustabdyk HolyArrs, vykdyk holyarrs restore --pre-update, paleisk jį.

Nieko neištrinama. Naujesni duomenys perkeliami į backups/before-restore-<time>/, todėl gali viską atšaukti. Grįžus daugiau nei viena versija atgal, pasirenkamas naujausias backup prieš atnaujinimą, kurį ta versija gali perskaityti.

Viskas skiltyje Settings > Health checks (nustatymai > būklės patikros). Paskutiniai trys yra išplėstinėje kortelės dalyje.

Nustatymas Numatytasis Keisk, kai
Check for a newer HolyArrs (tikrinti, ar yra naujesnė HolyArrs) On Nenori jokios išorinės užklausos
Check for updates every (tikrinti atnaujinimus kas) day Nori rečiau tikrinti: 3, 7, 14 arba 30 dienų
Release feed (release srautas) Empty (HolyArrs releases) Turi savo srautą
Feed may be on the local network (srautas gali būti vietiniame tinkle) Off Tavo srautas yra tavo vietiniame tinkle
Include test versions (like 1.2.0-rc1) (įtraukti bandomąsias versijas) Off Nori pranešimų apie bandomąsias versijas

Požymis: „The last check did not work.“ Priežastis: serveris neturi interneto arba tavo srautas yra vietiniame tinkle. Sprendimas: patikrink prieigą prie interneto arba įjunk Feed may be on the local network.

Požymis: release srauto neišsaugo. Priežastis: adrese yra vardas, slaptažodis, ?query ar #fragment, arba jis neprasideda http:// ar https://. Sprendimas: pašalink tas dalis.

Požymis: atnaujinimas sustojo dėl vietos diske trūkumo. Priežastis: nėra vietos kopijai ir atnaujinimui. Sprendimas: atlaisvink vietos ten, kur yra konfigūracijos aplankas, ir paleisk iš naujo.

Požymis: grįžimo puslapis atmeta tavo kodą. Priežastis: senas kodas arba 10 neteisingų kodų nuo paskutinio paleidimo. Sprendimas: nukopijuok kodą iš naujausios log eilutės. Po 10 neteisingų bandymų paleisk konteinerį iš naujo ir naudok naują kodą.

Kai kurios funkcijos šioje versijoje pagal numatymą išjungtos. Įjunk jas savo rizika. Kol jos atidėtos, jų puslapiai ir meniu punktai paslėpti, jų API maršrutai atsako „not found“, o jų užduotys nevykdomos. Duomenys, kuriuos joms išsaugojai, lieka.

Kad įjungtum vieną, pridėk jos jungiklį į HOLYARRS_FLAGS, atskirtą kableliais, ir paleisk konteinerį iš naujo:

environment:
HOLYARRS_FLAGS: "subtitle_sites,alert_channels_more"

Kad išjungtum, pašalink pavadinimą ir paleisk iš naujo. Paslėpti nustatymai sugrįžta, kai vėl įjungi.

Jungiklis Funkcija
row_title_stats Atrasti eilutės pavadinimų statistika skiltyje Appearance
trakt_lists Trakt raktas, Trakt sąrašai ir Trakt apžvalgos. TMDB sąrašai lieka įjungti
alert_channels_more Telegram, ntfy, Gotify, Pushover ir webhook pranešimai. Discord ir el. paštas lieka įjungti
subtitle_sites Subtitrų svetainės ir subtitrų paieška. Tavo subtitrų kalba lieka įjungta
emby_signin Prisijungimas per Emby. Emby bibliotekos atnaujinimas vis tiek veikia
go_back Skydelis Go back (grįžti) puslapyje Status. Žingsniai skiltyje Grįžk prie ankstesnės versijos veikia ir be jo

Pridėjai jungiklį ir nieko nepasikeitė? Patikrink rašybą (mažosios raidės, pabraukimai) ir paleisk iš naujo konteinerį, o ne tik puslapį.

Ką siunčia patikra

Viena užklausa į api.github.com dėl naujausios versijos, tik su User-Agent: HolyArrs/<version>. Jokios paskyros, rakto ar medijos sąrašo. Kai patikra išjungta, jokių užklausų nėra.

Paskutinis atsakymas išsaugomas, todėl paleidimas iš naujo netikrina anksčiau laiko. Viena patikra laukia daugiausia 15 s, skaito daugiausia 512 KB ir seka daugiausia 3 nukreipimus, niekada nekeisdama tarp http ir https. Nuoroda į versijos pastabas rodoma tik tada, kai veda į HolyArrs versijų puslapius GitHub; kitu atveju versija rodoma kaip paprastas tekstas.

Release feed priima GitHub stiliaus versijos atsakymą, versijų sąrašą, bet kokį JSON su version arba paprastą tekstą su versija. Debesų metaduomenų adresai visada atmetami. Bandomoji versija laikoma senesne už paprastą versiją.

Backup prieš atnaujinimą

Prieš keisdama saugomus duomenis, HolyArrs:

  1. Patikrina, ar yra vietos kopijai ir atnaujinimui. Jei ne, nieko nekeičia. Praleisti galima su HOLYARRS_SKIP_SPACE_CHECK=yes.
  2. Nukopijuoja kiekvieną duomenų bazę į backups, patikrina kopiją ir šalia parašo sha256 failą. Po 3 nepavykusių kopijų nieko nekeičia.
  3. Vykdo kiekvieną atnaujinimo žingsnį atskirai ir jį patikrina. Nepavykęs žingsnis atšaukiamas; baigti žingsniai lieka. Paleisk tą pačią versiją dar kartą, kad tęstum nuo nepavykusio žingsnio su ta pačia kopija.

Po pirmo sėkmingo paleidimo kopija tampa holyarrs-backup-pre-update-<time>.zip, aprašyta kaip „before updating from 1.1.0 to 1.2.0“. Ji rodoma skiltyje Settings > Backups (nustatymai > backup) ir su holyarrs restore --list. Naujausios 3 išsaugomos; backup tvarkaraštis jų niekada nepašalina. Naujas diegimas arba atnaujinimas, kuris duomenų nekeičia, jų nesukuria.

Patikrink image

Nuo 1.0.3 kiekvienas Docker Hub image pasirašomas GitHub versijos paleidimo metu. Nereikia atsisiųsti jokio rakto. Image patikrink su cosign. Ten, kur parašyta <version>, įrašyk versiją, kurią naudoji, pavyzdžiui, 1.0.3:

Terminal window
cosign verify holyarrs/holyarrs:<version> \
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
--certificate-identity-regexp '^https://github.com/HolyArrs/HolyArrs/\.github/workflows/sign\.yml@refs/(tags/[0-9.]+|heads/main)$'

Turėtum pamatyti The cosign claims were validated. Bet kas kita reiškia, kad image nesukurtas HolyArrs versijos paleidime: nevykdyk jo.

Image taip pat turi įrašą, kaip jis sukurtas, ir sąrašą, kas jame yra (SBOM). Patikrink juos su GitHub CLI:

Terminal window
gh attestation verify oci://docker.io/holyarrs/holyarrs:<version> --repo HolyArrs/HolyArrs

Tie patys failai yra kiekvienoje GitHub versijoje: .sigstore.json (parašas), .intoto.jsonl (sukūrimo įrašas) ir .sbom.spdx.json (turinys).

HolyArrs yra nemokama. Jei sutaupė tau laiko, pažymėk jį žvaigždute GitHub, paremk jį arba nupirk man kavos.