Actualización manual de BookStack
Instalación por release / tarball (procedimiento reforzado)
ProcedimientoDocumentoseguro,operativo,probadono guía genérica.
Describe este tipo de sistema yrepetible.este método de instalación.
VálidoSiparaalgoinstalacionesno coincide con el estado descrito,NOSEgitDETIENE EL PROCESO, como la tuya..
0. CondicionesEstado previasinicial verificado (OBLIGATORIO)
Antes de empezar, todo esto debe ser cierto:
BookStackMétodoinstaladodeporinstalación: release / tarball (.tar.gz)NO git)PHPRuta activa de BookStack:/var/www/bookstack- Usuario propietario:
www-data:www-data - PHP-FPM funcionando
(php-fpm) - Base de datos operativa
Usuariopublic/uploadsweb:puedeser directorio o symlink (válido)www-dataBackups bajo control (restic, snapshots, etc.)
1. ComprobarLa versión actual
se obtiene con:
cd /var/www/bookstack
cat version
Ejemplo:
v25.12.2
Si alguno de estos puntos no se cumple, no continuar.
1. Prohibiciones absolutas
Durante todo el procedimiento:
- ❌ NO usar
git clone,git pull,git checkout - ❌ NO actualizar “in place” sobre
/var/www/bookstack - ❌ NO copiar
vendor/desde la instalación vieja - ❌ NO ejecutar comandos fuera del directorio indicado
- ❌ NO improvisar rutas “equivalentes”
- ❌ NO continuar si un paso falla o no queda claro
Este procedimiento es lineal y controlado.
2. Backup (fuera de alcance de este documento)
Antes de seguir:
- Backup completo realizado
- Verificado que puede restaurarse
Si no hay backup, no se actualiza.
3. Preparar directorio de trabajo (fuera de producción)
mkdir -p /root/tmp-bookstack-update
cd /root/tmp-bookstack-update
Checkpoint
pwddevuelve/root/tmp-bookstack-update- No se ha tocado
/var/www/bookstack
3.4. Descargar nueva release
Ejemplo para v25.12.3:
wget https://github.com/BookStackApp/BookStack/archive/refs/tags/v25.12.3.tar.gz
tar xzf v25.12.3.tar.gz
mv BookStack-25.12.3 bookstack_NEW
Checkpoint
- Existe
bookstack_NEW/ - Contiene
artisan,public/,storage/
4.5. Copiar configuración y datos necesarios
Desde la instalación activa:
cp /var/www/bookstack/.env bookstack_NEW/
cp -a /var/www/bookstack/storage bookstack_NEW/
cp -a /var/www/bookstack/public/uploads bookstack_NEW/public/
cp /var/www/bookstack/public/custom.css bookstack_NEW/public/ 2>/dev/null || true
Checkpoint
⚠️
Nobookstack_NEW/.envcopiarexistestorage/existe dentro devendor/bookstack_NEWdesde la instalación vieja.
5.6. Instalar dependencias PHP
cd bookstack_NEW
composer install --no-dev --optimize-autoloader
Checkpoint
- El comando termina lo más limpio posible
- Existe el directorio
vendor/ vendor/NO ha sido copiado manualmente
Esperar sin interrumpir.
Si falla, no seguircontinuar.
6.7. Ejecutar migraciones
php artisan migrate --force
Resultado habitual:
Nothing to migrate.
Checkpoint
- No hay errores
- Si hay migraciones, se leen antes de continuar
7.8. Swap controlado de(ÚNICO versionespaso crítico)
mv /var/www/bookstack /var/www/bookstack_OLD_$(date +%Y%m%d)
mv /root/tmp-bookstack-update/bookstack_NEW /var/www/bookstack
chown -R www-data:www-data /var/www/bookstack
Checkpoint
/var/www/bookstackexiste- Propietario correcto:
www-data - La carpeta OLD sigue intacta
8.9. LimpiarLimpieza de cache y recargarrecarga de PHP
cd /var/www/bookstack
sudo -u www-data php artisan config:clear
sudo -u www-data php artisan cache:clear
sudo systemctl reload php8.4-fpm
9.10. Verificación final
AccederAccesovíawebnavegadorcorrectoComprobarLoginloginfuncionalVerificar subidaSubida de imágenes correctaConfirmarVersiónversión:confirmada:
cat /var/www/bookstack/version
Debe mostrar la nueva versión.
10.11. Rollback inmediato (si algo falla)
rm -rf /var/www/bookstack
mv /var/www/bookstack_OLD_YYYYMMDD /var/www/bookstack
sudo systemctl reload php8.4-fpm
No investigar con producción rota.
Primero volver atrás, luego analizar.
NotasNota importantespara IA / operador futuro
Este documento NO es genérico.
- No
usarasumirgitconfiguracionespullen instalaciones por release.distintas - No
mezclar“mejorar”métodoselde actualización.procedimiento ActualizarNosoloañadircuandopasos “equivalentes”- No cambiar el orden
Si el sistema esténo establecoincide con lo descrito aquí,
se documenta primero y se adapta después.
Fin.