Cuando el updater está en marcha en la instalación, lo más cómodo es actualizar en la interfaz, como se explica en «Actualizar con el updater». Aquí tiene el mismo procedimiento desde la línea de comandos; funciona siempre, con el updater o sin él. Todos los comandos se ejecutan en el directorio de la instalación.
Actualizar a una versión nueva
Cada versión es un paquete nuevo. Páseselo directamente al comando:
./draften update --bundle /ruta/a/draften-<versión nueva>.tar
o cópielo en la carpeta updates/ y ejecute:
./draften update <versión nueva>
La actualización no interrumpe el servicio y avanza paso a paso:
- comprueba el paquete con las claves de la versión instalada, antes de usar nada de él,
- guarda un volcado de la base de datos en
backups/(se conservan los tres últimos; el número lo fijaDRAFTEN_BACKUPSen.env), - ejecuta las migraciones de la base de datos,
- sustituye los workers,
- inicia la versión nueva de la web junto a la que está atendiendo y cambia a ella en cuanto está sana.
Si la versión nueva no llega a estar sana, no se cambia nada y la anterior sigue atendiendo.
Un paquete también se puede comprobar sin instalarlo:
./draften check draften-<versión nueva>.tar
Después de actualizar
./draften status
muestra qué color de la web atiende, la versión y el estado de los dos colores y de los workers, el estado de HTTPS y los volcados de la base de datos. En la página Funcionamiento los workers dan señales y el veredicto es «la capacidad es suficiente». Lo que cambió la versión está en el archivo NOTES.md.
Volver a la versión anterior
La versión que atendía antes de la actualización sigue en marcha sin tráfico. Puede cambiar a ella de inmediato:
./draften rollback
Esto funciona porque la base de datos sigue siendo legible también para la versión anterior.
Volver a una versión aún más antigua
Eso solo es posible restaurando un volcado de la base de datos. Cada volcado de backups/ lleva en el nombre la versión que estaba en marcha cuando se hizo:
docker compose stop worker
gunzip -c backups/<hora>-<versión>.sql.gz | docker compose exec -T db sh -c 'mariadb -uroot -p"$MARIADB_ROOT_PASSWORD"'
./draften update <versión> --no-backup
Todo lo que ocurrió en draften después de hacerse el volcado se pierde.
Un volcado de antes de sustituir la clave de cifrado solo se abre con la clave anterior, MASTER_KEY_PREVIOUS en .env. Vea Copia de seguridad y restauración.
Una máquina sin internet
El updater descarga las versiones nuevas con la clave de la licencia. Una máquina sin internet no descarga nada: copie el paquete en updates/ y actualice con ./draften update <versión>, o el updater se lo ofrecerá desde ahí en la interfaz.
Lo que no cambia por sí solo
- La configuración, las instrucciones y las fuentes de los asistentes están en la base de datos, y una actualización no las toca.
- El client secret de un registro de Entra caduca según el plazo para el que lo emitió; renuévelo en la interfaz (Organización › Integraciones › Nuevo secreto), no actualizando.
- El certificado HTTPS lo renueva usted:
./draften certificate new.pem new.key.