Primeros pasos
Despliega
Lleva tu Hollware a tu cuenta de Cloudflare con un solo comando y luego crea tu sitio en la base de datos remota.
Despliega
Hollware se despliega en tu propia cuenta de Cloudflare como un Worker, con una base de datos D1, un namespace de KV, dos colas y un bucket de R2 para las imágenes de tus sitios. El plan gratuito de Workers alcanza para empezar.
Inicia sesión y despliega
npx wrangler login
npm run deploynpm run deploy ejecuta hollware deploy, que:
- despliega el Worker con wrangler. La primera vez, wrangler crea la base de datos, el namespace, las colas y el bucket que nombra
wrangler.jsonc; - configura
HOLLWARE_PUBLIC_URLenwrangler.jsonccon la URL del Worker, y despliega de nuevo con ella; - crea
HOLLWARE_SECRET, que sella los secretos que crea Hollware, cuando el Worker no lo tiene; - aplica las migraciones a la base de datos remota.
Después haz commit de wrangler.jsonc: ahora contiene la URL pública. En local, npx hollware dev sigue sirviendo en http://localhost:5199, sea cual sea la URL que escribió el deploy.
Crea tu sitio
La base de datos remota parte vacía. Crea en ella tu sitio y su dueño; el sitio parte de una plantilla, a la que das forma en el admin:
npx hollware init --site my-site --remoteImprime un token para tus agentes y un enlace para configurar tu passkey en el admin desplegado.
Tu propio dominio
Para servir Hollware en un dominio tuyo, en una zona de la misma cuenta de Cloudflare, despliega con él como URL pública:
npx hollware deploy --url https://cms.example.comEscribe la URL en HOLLWARE_PUBLIC_URL y una ruta para su host en wrangler.jsonc, y Cloudflare crea el registro DNS y el certificado. El primer deploy ya puede recibirla: npm run deploy -- --url https://cms.example.com.
HOLLWARE_PUBLIC_URL importa: Hollware responde solo a las solicitudes para ese host y rechaza todas las demás. Es su protección contra el DNS rebinding.
Revísalo
npx hollware doctor --remoteRevisa los flags, los bindings, el bucket de imágenes, las migraciones y el dueño, y dice qué corregir.
Tu Hollware no está hecho para que lo encuentren: cada respuesta lleva X-Robots-Tag: noindex, nofollow y su /robots.txt lo prohíbe todo. Los buscadores indexan tus sitios, nunca el CMS.
hollware deploy aplica primero las migraciones nuevas y después despliega el Worker nuevo. Antes de aplicar algo a una base de datos que ya tiene datos, toma un bookmark de Time Travel y lo imprime. Ver Actualizar Hollware.Respaldos
Cada día después de las 03:00 UTC, el cron de tu Hollware escribe un respaldo de cada sitio en su bucket de R2: un archivo JSON con la definición del sitio y cada entrada, su último Markdown y el que está publicado. Guarda solo el contenido, nunca las imágenes: ya están en el bucket y nunca cambian. Cada respaldo se guarda 30 días, salvo que el sitio diga otra cosa: en el admin, en Sitio, en Respaldos, o en backups de su definición con update_site, un dueño los guarda de 1 a 365 días, o los desactiva:
"backups": { "enabled": true, "retentionDays": 30 }Con los respaldos desactivados no se hace ninguno nuevo, y los guardados se eliminan cuando pasa su plazo. El admin los lista en Sitio, en Respaldos, donde un dueño descarga uno; list_backups los lista por MCP, y hollware backup get convierte uno en archivos.
Restaurar
Tres formas de volver atrás, para tres tipos de pérdida:
- Toda la base de datos, a un momento. D1 guarda 30 días de Time Travel:
npx wrangler d1 time-travel restore <base de datos> --timestamp <hora ISO>deja la base de datos como estaba en ese momento, o--bookmark <id>la deja en el bookmark quehollware migrate --remoteimprimió antes de migrar. Todo lo posterior a ese momento se pierde, así que revisa primero qué perderás connpx wrangler d1 time-travel info <base de datos> --timestamp <hora ISO>. - Tu contenido, de un día.
hollware backup get <fecha> ./restore --url <la URL de tu Hollware> --token-file <archivo>escribe el respaldo de ese día como archivos Markdown, yhollware import ./restorelos recupera como borradores. Llega al contenido de un sitio sin tocar el resto de la base de datos. - Tu contenido, desde archivos.
hollware export ./backup --url <la URL de tu Hollware> --token-file <archivo>escribe cada entrada como Markdown;hollware import ./backuplas recupera como borradores, sin cambios, que luego publicas. Guarda una exportación en otro lugar que no sea Cloudflare, con una frecuencia que tú definas: es la copia que sobrevive si pierdes la cuenta.