Pro administrátory
← Na rozcestník

Aktualizace z příkazové řádky

./draften update bez výpadku, kontrola balíčku, návrat na předchozí i starší verzi a stroj bez internetu.

Když na instalaci běží updater, je nejpohodlnější aktualizovat v rozhraní — popisuje to Aktualizace přes updater. Tady je tentýž postup z příkazové řádky; funguje vždycky, s updaterem i bez něj. Všechny příkazy se spouštějí v adresáři instalace.

Aktualizace na novou verzi

Každé vydání je nový balíček. Buď ho předejte příkazu přímo:

./draften update --bundle /cesta/k/draften-<nová verze>.tar

nebo ho nakopírujte do složky updates/ a spusťte:

./draften update <nová verze>

Aktualizace proběhne bez výpadku a postupně:

  1. zkontroluje balíček podle klíčů nainstalovaného vydání — dřív, než z něj cokoli použije,
  2. uloží výpis databáze do backups/ (drží se poslední tři; počet určuje DRAFTEN_BACKUPS v .env),
  3. provede migrace databáze,
  4. vymění workery,
  5. spustí novou verzi webu vedle té, která slouží, a přepne na ni, až je zdravá.

Když se nová verze zdravou nestane, nic se nepřepne a dál slouží ta předchozí.

Balíček jde zkontrolovat i bez instalace:

./draften check draften-<nová verze>.tar

Po aktualizaci

./draften status

ukáže, která barva webu slouží, verzi a zdraví obou barev i workerů, stav HTTPS a výpisy databáze. Na stránce Provoz se workery ozývají a verdikt je „kapacita stačí“. Co vydání změnilo, je v souboru NOTES.md.

Verze, která sloužila před aktualizací, běží dál bez provozu. Přepnete na ni okamžitě:

./draften rollback

Jde to proto, že databáze zůstává čitelná i pro předchozí verzi.

Tam už vede jen obnova výpisu databáze. Každý výpis v backups/ nese v názvu verzi, která běžela, když vznikl:

docker compose stop worker
gunzip -c backups/<čas>-<verze>.sql.gz | docker compose exec -T db sh -c 'mariadb -uroot -p"$MARIADB_ROOT_PASSWORD"'
./draften update <verze> --no-backup

Všechno, co se v draftenu stalo po vzniku výpisu, se tím ztratí.

Výpis z doby před výměnou šifrovacího klíče otevře jen předchozí klíč, MASTER_KEY_PREVIOUS v .env. Viz Zálohy a obnova.

Stroj bez internetu

Nová vydání stahuje updater s klíčem z licence. Stroj bez internetu nic nestahuje: balíček nakopírujte do updates/ a aktualizujte příkazem ./draften update <verze> — nebo vám ho odtud nabídne updater v rozhraní.

Co se samo nezmění

Textová verze