AUTOHOSPEDADOdocker compose · air-gap · Lleve su propia autenticación

Detector de plagio autoalojado para cumplimiento de datos

Ejecute el motor Apache 2.0 en su propia infraestructura. Docker compose para la instalación estándar, Helm chart para Kubernetes, soporte bare-metal para entornos air-gapped. Sus servidores, su Postgres, su autenticación, sus datos. Ningún tráfico sale de su VPC. La opción adecuada cuando la nube no es viable.

docker compose en 10 minutosSoporte air-gapLleve su propio Postgres · SAML / LDAP / OIDC
QUIÉN AUTOHOSPEDA

Cuatro contextos donde la nube no es opción.

DESPACHOS DE ABOGADOS

Despliegue que preserva privilegios

Documentos jurídicos, memorandos y materiales protegidos no pueden pasar a la nube de terceros.

  • Soporta red air-gapped
  • Autenticación SAML / LDAP / Active Directory
  • Funciona dentro de su entorno ya en cumplimiento
UNIVERSIDADES

Apto para revisión ética, en campus

Entrega de estudiantes, investigación clínica, estudios validados por revisiones éticas — requisitos de residencia de datos estrictos.

  • Funciona junto a Canvas / Moodle en su red
  • Apache 2.0 — su equipo IT clona el repositorio antes de firmar
  • Modo residencia UE si nube es el nivel adecuado
GOBIERNO

Air-gap + compatibilidad FedRAMP

Federal, estatal, defensa — el contenido no puede salir de la red de la entidad.

  • Opción de instalación bare-metal (no requiere Docker)
  • Soporte para OIDC / CAC / PIV y smart-card
  • Imagen base con refuerzo STIG (RHEL UBI)
EMPRESA

Protección IP interna + secreto comercial

Documentos I+D, borradores de fusiones, informes internos — contenido que debe permanecer dentro del firewall.

  • Helm chart Kubernetes para escalamiento horizontal
  • Lleve su propio Postgres + Redis + almacenamiento de objetos
  • Log de auditoría → SIEM (Splunk / Datadog / Elastic)
OPCIONES DE INSTALACIÓN

Tres modos de despliegue. Un motor.

Elija el camino que se ajuste a su infraestructura. El motor de detección es idéntico en los tres; sólo difiere el empaquetado operativo.

01

01 · docker compose (10 min)

git clone github.com/NoplagLabs/noplag-engine && cd engine && docker compose up -d. El archivo compose incluye Postgres, Redis, el contenedor del motor y una interfaz de administración mínima. Por defecto, despliegue de un solo nodo, adecuado para equipos pequeños (aprox. 1,000 verificaciones/día). Listo para producción tal como está; lo más complejo es integrar tu propio sistema de autenticación y corpus.

02

02 · Kubernetes Helm chart

helm install noplag noplag/engine --values your-values.yaml. El chart externaliza Postgres + Redis (apunte a sus clusters existentes), soporta escala horizontal para pods del motor y expone métricas Prometheus para autescalado. Valores Helm documentados para límites de recursos, cantidad de réplicas y reclamaciones de volúmenes persistentes.

03

03 · Bare-metal / air-gapped

Para entornos que no usan Docker (defensa y gobierno). El motor se entrega como tar con dependencias exactas; instalación vía ansible playbook en RHEL UBI o Ubuntu LTS. Amigable con air-gap: no realiza llamadas externas tras la instalación. Imagen base STIG-hardenable; módulos de autenticación OIDC / CAC / PIV incluidos.

REQUISITOS DE SISTEMA

Qué necesita para funcionar.

Huella de hardware mínima para equipos pequeños. Escala horizontalmente para volumen de producción. Lleve usted todo: autenticación y corpus en empresa.

01 · NODO DEL MOTOR

8 vCPU + 16 GB RAM como mínimo para el contenedor del motor. Maneja aprox. 50 verificaciones concurrentes a 47 s de mediana por documento de 1.500 palabras. Escale añadiendo pods de motor tras un balanceador de carga — el Helm chart automatiza esto con HPA en CPU y cola.

02 · BASE DE DATOS

PostgreSQL 15+ con extensión pgvector. A dimensionar según su volumen: aprox. 50 GB por 100.000 documentos indexados, escala lineal. RDS / Cloud SQL / instancias gestionadas vía cadena estándar. En autogestión, active pgvector + GIN.

03 · CACHE / COLA

Redis 7+ para la cola de trabajo y caché. Huella pequeña (2 GB RAM típica). Elasticache / Memorystore / Redis Cloud funcionan; Redis en cluster aceptable en despliegues pequeños. Por defecto, Redis Sentinel para alta disponibilidad.

04 · ALMACENAMIENTO DE CORPUS

Enterprise: incluye el corpus público como un paquete indexable (~280 GB comprimidos). Se restaura en Postgres y un almacén de objetos (S3 / GCS / MinIO / Ceph) en la primera instalación. Opcional: puedes añadir adaptadores propios de búsqueda web (claves API de Google / Brave) para verificación en tiempo real, o prescindir de ellos si solo necesitas comprobar contra el corpus indexado.

05 · IDENTIDAD

SAML 2.0, LDAP, OIDC (Okta, Azure AD, Auth0, Keycloak) o email y contraseña integrados. Autenticación por smart-card (CAC / PIV) vía puente OIDC para gobierno. Multi-tenant en una sola instalación — útil para servicios compartidos entre áreas.

06 · OBSERVABILIDAD

Endpoint de métricas Prometheus + trazas OpenTelemetry. Log de auditoría en JSON; puede enviar a su SIEM (Splunk, Datadog, Elastic, Grafana Loki). Dashboards Grafana en JSON en el repositorio. Compatible con la pila CNCF estándar.

DESPLIEGUE EN 10 MINUTOS

Despliegue estándar con docker compose.

Stack compose listo para producción con el motor, Postgres, Redis y la interfaz de administración. Añada su proveedor de autenticación; configure su corpus; escale horizontalmente cuando un nodo no baste.

$ install · bashCopiar
$ git clone https://github.com/NoplagLabs/noplag-engine
$ cd engine
$ cp .env.example .env
$ vim .env # configure auth + corpus + secrets
$ docker compose up -d
Creating noplag-postgres ... done
Creating noplag-redis ... done
Creating noplag-engine ... done
Creating noplag-admin ... done
Engine ready at http://localhost:8080
Admin UI at http://localhost:8081
.env · configuraciónCopiar
# Auth
AUTH_PROVIDER=saml # or oidc, ldap, builtin
SAML_METADATA_URL=https://idp.acme.com/...
# Database
POSTGRES_URL=postgres://user:pw@db:5432/noplag
REDIS_URL=redis://redis:6379/0
# Corpus
CORPUS_BUNDLE_PATH=/srv/corpus/2026-05
WEB_SEARCH_ENABLED=false # air-gap
# Observability
OTEL_ENDPOINT=https://otel.acme.com:4317
AUDIT_LOG_SINK=splunk-hec
  • 10 mindocker compose listo
  • 8 / 16vCPU / GB RAM mínimo
  • Apache2.0 · gratuito para siempre
  • 0requiere red externa (air-gap)
  • SAMLLDAP · OIDC · CAC / PIV smart-card
AUTENTICACIÓN + IDENTIDAD

Integre en su infraestructura de identidad.

01 · SAML 2.0

SSO empresarial estándar

Configure SAML_METADATA_URL apuntando a su IdP. Probado con Okta, Auth0, OneLogin, Microsoft Entra (Azure AD), Ping Identity, Keycloak y Shibboleth. Mapeo de grupos para acceso por roles. Aprovisionamiento de usuarios SCIM 2.0 vía la API admin.

Provisionamiento just-in-time + sincronización SCIM · patrón empresarial más común.
02 · LDAP / AD

Integración directa con Active Directory

Para entornos con AD propio u OpenLDAP. Configuración de credenciales en .env; las consultas de grupo definen el acceso. Útil en universidades, despachos y gobierno donde SAML es redundante o AD ya cubre a la organización.

Soporta consultas de grupos anidados · latencia de autenticación típica: 5 segundos.
03 · OIDC + SMART-CARD

OIDC nativo-cloud + CAC/PIV para defensa

OIDC estándar para Okta / Auth0 / Cognito / Google Workspace. Para defensa y gobierno: autenticación por smart-card CAC/PIV vía puente OIDC. Asocia el identificador de la smart-card con un usuario Noplag; el mapeo de grupo sigue el directorio DoD de su organización.

Aproximación compatible con FedRAMP · autenticación smart-card probada con CAC DoD + GSA PIV.
GESTIÓN DE PARCHES

Actualice según su calendario, no el nuestro.

Autohospedado significa control total sobre su calendario de actualizaciones. Liberaciones estables mensuales (el mismo commit que corre la nube) y parches en caso de problemas de seguridad. Tire el nuevo tag, ejecute docker compose pull && up -d y listo. Las migraciones corren al iniciar el contenedor. Para air-gap: publicamos bundles firmados (RPM / DEB / tar) con firmas separadas; verifique la firma, transfiera bajo su proceso habitual, instale en la próxima ventana de mantenimiento. Soporte de versión larga: parches críticos 18 meses; versiones de producción, actualización mensual según el ciclo cloud. En cualquier caso: el camino de actualización es suyo, los datos son suyos, lo único que controlamos es lo que publicamos en el registry.

Lea la guía de actualización
PREGUNTAS FRECUENTES

Las preguntas reales de IT / DevOps antes de desplegar.

¿Qué es realmente gratuito vs pago en autohospedado?

El motor Apache 2.0 es gratuito para siempre — clone el repo, ejecútelo. Lo gratuito cubre el motor de detección + admin UI + REST API. Enterprise añade: corpus público indexable (~280GB), soporte y SLA dedicado, entrega air-gap firmada y ayuda para migración.

¿Se puede usar sin acceso a internet (air-gap)?

Sí. El motor no necesita acceso externo para corpus indexado. Defina WEB_SEARCH_ENABLED=false para saltar la verificación web en vivo. Enterprise envía bundles firmados con firmas GPG separadas — transfiera bajo su proceso habitual. Probado en despliegues DoD y comunidad de inteligencia.

¿Cuál es el mínimo de hardware requerido?

Contenedor motor: 8 vCPU + 16 GB RAM. Postgres: 4 vCPU + 8 GB + 50 GB para 100.000 docs. Redis: 2 GB RAM. Para 5.000 verificaciones/mes, una máquina media corre todo. Para 100.000+, Kubernetes + motor horizontal + Postgres gestionado.

¿Funciona con nuestra infraestructura de identidad?

SAML 2.0 (Okta, Auth0, Entra, OneLogin, Keycloak, Shibboleth), LDAP / AD, OIDC, CAC/PIV via OIDC para federal, o email y contraseña. Provisionamiento SCIM 2.0 soportado. Atributo de grupo → rol configurable.

¿Y pgvector — es obligatorio?

Lo será, para la capa de incrustaciones vectoriales L3 (v1.2); v1.0 no lo requiere. Postgres 15+ con pgvector. RDS, Cloud SQL y Cloud Postgres lo soportan. En Postgres autogestionado, se necesita CREATE EXTENSION pgvector al desplegar. Sin esto, el motor ejecuta las capas incluidas, pero perderá la capa semántica de paráfrasis cuando esté disponible.

¿Cómo traemos el corpus público a red privada?

Enterprise: bundle firmado de unos 280 GB. Transfiera usando su proceso de importación, restaure a Postgres y almacenamiento de objetos en la instalación inicial. Se actualiza mensual con el corpus cloud. Comunidad: puede construirlo desde OpenAlex / CORE / Common Crawl públicos usando los scripts de ingestión.

¿Cómo se actualiza para producción?

Releases estables mensuales (el mismo commit de cloud). LTS: 18 meses de parches. Actualización estándar: docker compose pull && up -d (Helm: helm upgrade). Migraciones automáticas al iniciar; semver mantenido; cambios críticos documentados.

¿Funciona con SOC 2 / HIPAA / FedRAMP?

Autohospedado pone el cumplimiento a su cargo — proveemos el motor, usted lo ejecuta en un entorno ya en cumplimiento. Somos una empresa open core y no disponemos de certificaciones SOC 2, HIPAA ni FedRAMP; no lo afirmamos ni ocultamos. Autohospedado da a equipos con esos requerimientos una manera de ejecutar Noplag totalmente bajo sus controles — con soporte air-gap, bare-metal, CAC/PIV, PHI bajo su cargo y sin tráfico fuera de su red.

¿Se puede personalizar el pipeline de detección?

Apache 2.0 — puede hacer fork y modificar. Operadores autohospedados han añadido: fuentes corpus propias, clasificadores de citas modificados (estilos regionales fuera de los seis por defecto), plug-ins de integración. PRs upstream bienvenidos; aceptamos lo que aplica a la base amplia de usuarios.

¿Y el soporte?

Comunidad: issues GitHub, Discord público, documentación comunitaria. Respondemos bugs y vulnerabilidades pero no hay SLA. Enterprise: ingeniero dedicado, contacto específico, SLA de respuesta según contrato, ayuda integración y migración.

Clone el repo. docker compose up. Ejecútelo dentro de su red.

Apache 2.0 — gratuito para siempre. Los contratos empresariales incluyen el paquete de corpus público indexable, SLA de soporte dedicado y entrega firmada para entornos aislados. En otros casos: github.com/NoplagLabs/noplag-engine y un host docker bajo tu control.

Detector de plagio autoalojado para cumplimiento