Saltar al contenido principal

Desplegar banco de ontología en una caja

Runbook 27. Dos mitades: el servicio (automatizado) y el borde público (DNS humano + proveedor de identidad (OIDC) + proxy de entrada).

1. Servicio en sis-interna (sin exponer)

tools/ops/desplegar-ontology-catalog.sh <host-ssh> <Nombre>

Envía fuente (~14 MB), no la imagen (~6,6 GB). Construye en la caja con python:3.12. Genera la clave en la caja. ontology-catalog_ALLOW_ANONYMOUS=false. Ni explorer ni almacén de grafo del catálogo publican puerto.

El resultado del guion es lo que encontró la verificación, no que los comandos hayan corrido.

2. Cablear SIS

  1. Copiar la clave de /opt/ontology-catalog/.env a /opt/sis/.env como SOCIETY_ontology-catalog_API_KEY.

  2. Enviar imágenes ya construidas (containers save \| gzipcontainers load). Las cajas no construyen servicios SIS.

  3. Añadir las variables al compose DE LA CAJA con tools/ops/anadir_ontology-catalog_compose.py (inserta en el bloque society-telemetry). Editar el compose del repo no hace nada en el cliente. Síntoma de saltárselo: 503 en /ontology-catalog/link.

  4. Recrear:

    tools/ops/desplegar-servicio.sh --remoto <host> --sin-build \
    --permitir-sin-cambio society-telemetry society-graph-ui
  5. tools/ops/verificar-ontology-catalog.sh <host> <Nombre> <hosts> <modelos> — incluye tres casos que deben fallar (401 sin credencial / sin firma / firma falsa). Canarios: hosts en el grafo y modelos LLM Router (recrear telemetry borra chatgpt/* si la cuenta no está conectada).

3. Borde onto.<cliente>.do (ya vivo en los dos)

Orden, que importa:

  1. tools/ops/proveedor OIDC_app_onto.py <doobject-store> <ruta-.env> (una app por cliente).
  2. Levantar infra/onto-edge/containers-compose.yml/opt/oauth2-proxy-onto/. Cookie secret: 32 caracteres URL-safe (head -c 24 | base64 | tr '+/' '-_' | tr -d '='). Un head -c 32 | base64 de 44 caracteres a veces arranca y a veces entra en bucle.
  3. Dar la clave a proxy de entrada (edge-proxy.env modo 600) y recrear proxy de entrada. Verificar que los doalmacén de objetoss de siempre vuelven antes de tocar el proxy de entradafile.
  4. Añadir el bloque, edge-proxy validate, edge-proxy reload (en caliente). Escribir el proxy de entradafile por truncado, nunca mv.
  5. SOCIETY_ontology-catalog_PUBLIC_URL en .env y compose de la caja.

ontology-catalog-rele publica 127.0.0.1:8010 porque sis-interna es internal: true y orquestador de contenedores ignora ports: ahí.

DNS: registro A a mano (no hay doctl en las cajas). No añadas el vhost proxy de entrada antes de que el DNS apunte — Let's Encrypt 429.

Uso cotidiano: Ontología.