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ě:
- zkontroluje balíček podle klíčů nainstalovaného vydání — dřív, než z něj cokoli použije,
- uloží výpis databáze do
backups/(drží se poslední tři; počet určujeDRAFTEN_BACKUPSv.env), - provede migrace databáze,
- vymění workery,
- 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.
Návrat na předchozí verzi
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.
Návrat na ještě starší 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í
- Nastavení asistentů, pokyny a zdroje jsou v databázi a aktualizace na ně nesahá.
- Client secret registrace Entra vyprší podle toho, na jak dlouho jste ho vystavili; obnovíte ho v rozhraní (Organizace → Integrace → Nový secret), ne aktualizací.
- Certifikát HTTPS obnovujete sami:
./draften certificate nový.pem nový.key.