# Ghost News Ghost publica `news.sherlockhomeless.net` como archivo de informes diarios. ## Arquitectura y configuración - `ghost-db` conserva contenido y miembros en MySQL; sólo pertenece a `ghost_internal`. - `ghost` sirve la publicación, persiste temas y medios en `GHOST_CONTENT_PATH`, usa `mail-relay` y se publica mediante `proxy`. - `ghost-ops-gate` protege el índice privado `/ops` comprobando el miembro autenticado contra `GHOST_OPS_ALLOWED_EMAIL` y consultando posts con `GHOST_CONTENT_API_KEY`. `GHOST_DOMAIN` fija la URL canónica; las variables `GHOST_DB_*` deben coincidir entre Ghost y MySQL. `GHOST_MAIL_FROM` controla el remitente. La Content API key sólo permite lectura, pero sigue siendo secreta y debe vivir únicamente en `.env`. Los overrides de `theme-overrides/headline` ocultan publicaciones etiquetadas `#private-ops`. Deben aplicarse sobre la versión compatible del tema; tras actualizar Ghost o Headline, revisa diferencias antes de copiarlos. La capa `/ops` no reemplaza la seguridad de cada post: usa miembros de Ghost, etiqueta interna y visibilidad adecuada, además del gate. ## Despliegue ```bash cd ghost docker compose --env-file .env config docker compose --env-file .env up -d ``` El dominio se expone por Traefik en la red `proxy` y queda protegido con `crowdsec-bouncer@file`. La administracion queda bajo el login propio de Ghost en `/ghost/`. ## Primer acceso Abre: ```text https://news.sherlockhomeless.net/ghost/ ``` Completa el usuario administrador inicial de Ghost. ## Integracion futura con n8n El flujo recomendado es: ```text n8n genera informe completo -> publica post en Ghost por Admin API -> envia email/Telegram con resumen + enlace ``` Para publicar desde n8n no hace falta atravesar Traefik: puede llamar al servicio interno `http://ghost:2368` si se conecta la red correspondiente o se usa una ruta interna dedicada.