Für Administratoren
← Alle Themen

Aktualisieren über die Kommandozeile

./draften update ohne Ausfall, ein Paket prüfen, zur vorherigen oder einer älteren Version zurückkehren und ein Rechner ohne Internet.

Läuft auf der Installation der Updater, ist das Aktualisieren in der Oberfläche am bequemsten – das beschreibt Aktualisieren mit dem Updater. Hier steht derselbe Ablauf über die Kommandozeile; er funktioniert immer, mit oder ohne Updater. Alle Befehle laufen im Verzeichnis der Installation.

Auf eine neue Version aktualisieren

Jede Version ist ein neues Paket. Übergeben Sie es entweder direkt dem Befehl:

./draften update --bundle /path/to/draften-<new version>.tar

oder kopieren Sie es in den Ordner updates/ und führen Sie aus:

./draften update <new version>

Die Aktualisierung verursacht keinen Ausfall und läuft Schritt für Schritt:

  1. sie prüft das Paket anhand der Schlüssel der installierten Version – bevor sie irgendetwas daraus verwendet,
  2. sie speichert eine Datenbanksicherung in backups/ (die letzten drei bleiben erhalten; die Zahl legt DRAFTEN_BACKUPS in .env fest),
  3. sie führt die Migrationen der Datenbank aus,
  4. sie ersetzt die Worker,
  5. sie startet die neue Version der Weboberfläche neben der, die gerade bedient, und schaltet auf sie um, sobald sie gesund ist.

Wird die neue Version nicht gesund, wird nichts umgeschaltet, und die vorherige bedient weiter.

Ein Paket lässt sich auch prüfen, ohne es zu installieren:

./draften check draften-<new version>.tar

Nach der Aktualisierung

./draften status

zeigt, welche Farbe der Weboberfläche bedient, die Version und den Zustand beider Farben und der Worker, den Stand von HTTPS und die Datenbanksicherungen. Auf der Seite Betrieb melden sich die Worker, und das Urteil lautet „die Kapazität reicht“. Was die Version geändert hat, steht in der Datei NOTES.md.

Zur vorherigen Version zurückkehren

Die Version, die vor der Aktualisierung bedient hat, läuft ohne Verkehr weiter. Auf sie schalten Sie sofort zurück:

./draften rollback

Das geht, weil die Datenbank auch für die vorherige Version lesbar bleibt.

Zu einer noch älteren Version zurückkehren

Das geht nur über die Wiederherstellung einer Datenbanksicherung. Jede Sicherung in backups/ trägt im Namen die Version, die bei ihrer Erstellung lief:

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

Alles, was in draften nach der Erstellung der Sicherung geschehen ist, geht verloren.

Eine Sicherung von vor dem Ersetzen des Verschlüsselungsschlüssels öffnet sich nur mit dem vorherigen Schlüssel, MASTER_KEY_PREVIOUS in .env. Siehe Sicherung und Wiederherstellung.

Ein Rechner ohne Internet

Der Updater lädt neue Versionen mit dem Schlüssel aus der Lizenz herunter. Ein Rechner ohne Internet lädt nichts herunter: Kopieren Sie das Paket in updates/ und aktualisieren Sie mit ./draften update <version> – oder der Updater bietet es Ihnen von dort in der Oberfläche an.

Was sich nicht von selbst ändert

Textfassung