Zelfgehoste plagiaat checker met dataresidentie
Draai de Apache 2.0-engine op uw eigen infrastructuur. Docker compose voor de standaardinstallatie, Helm chart voor Kubernetes, bare-metal mogelijk voor air-gapped omgevingen. Uw servers, uw Postgres, uw authenticatie, uw data. Geen verkeer verlaat uw VPC. De juiste keuze als cloud geen optie is.
Vier situaties waar cloud geen optie is.
Deployment met behoud van privilege
Stukken, memo’s en discovery-materiaal onder beschermingsmaatregelen mogen niet naar de cloud van derden.
- Air-gapped netwerk mogelijk
- SAML / LDAP / Active Directory-authenticatie
- Draait binnen uw reeds compliant omgeving
IRB-reviewbaar, op campus
Student-inzendingen, klinisch onderzoek, IRB-goedgekeurde studies — strikte eisen voor data-opslag.
- Draait naast Canvas / Moodle op uw netwerk
- Apache 2.0 — uw IT kloont de repo vóór ondertekenen
- EU-data modus als cloud wel past
Air-gapped + FedRAMP-adjacent
Federaal, provinciaal, defensie — inhoud mag het netwerk van het agentschap niet verlaten.
- Bare-metal installatie-optie (geen Docker nodig)
- OIDC / CAC / PIV smartcard-authenticatie mogelijk
- STIG-hardenable basisimage (RHEL UBI)
Bescherming IP + bedrijfsgeheimen
R&D-documenten, M&A-concepten, interne whitepapers — inhoud die binnen de firewall moet blijven.
- Kubernetes Helm chart voor horizontale schaal
- BYO Postgres + Redis + objectopslag
- Auditlog → SIEM (Splunk / Datadog / Elastic)
Drie deployment-opties. Eén engine.
Kies wat past bij uw infrastructuur. De detectie-engine is identiek; alleen de verpakking verschilt.
01 · docker compose (10 min)
git clone github.com/NoplagLabs/noplag-engine && cd engine && docker compose up -d. Het compose-bestand bevat Postgres + Redis + de engine-container + een minimale admin-UI. Standaard een single-node deployment, geschikt voor kleine teams (~1.000 checks per dag). Direct geschikt voor productie; de meeste inspanning zit in het regelen van eigen authenticatie en corpus.
02 · Kubernetes Helm chart
helm install noplag noplag/engine --values your-values.yaml. Chart gebruikt externe Postgres + Redis (verwijs naar uw bestaande clusters), ondersteunt horizontale schaal van engine pods, en biedt Prometheus-metrics voor autoscaling. Gedocumenteerde Helm-waarden voor resource-limieten, replica’s, volume claims.
03 · Bare-metal / air-gapped
Voor omgevingen waar Docker niet kan (sommige defensie/overheid). Engine geleverd als tar-archief met alle afhankelijkheden gepind; installatie via ansible playbook op RHEL UBI of Ubuntu LTS. Air-gap-vriendelijk: geen externe netwerkverbinding nodig na installatie. STIG-hardenable basisimage; OIDC / CAC / PIV modules inbegrepen.
Wat nodig is om te draaien.
Bescheiden hardware voor kleine teams. Horizontaal schaalbaar voor productie. Zelf alles meebrengen, van authenticatie tot corpus (Enterprise).
01 · ENGINE NODE
Minimaal 8 vCPU + 16 GB RAM voor de engine-container. Doet ~50 gelijktijdige checks bij mediaan 47 sec per 1.500-woorden document. Horizontaal schalen door pods toe te voegen achter een loadbalancer — Kubernetes Helm regelt dit met HPA op CPU/queue diepte.
02 · DATABASE
PostgreSQL 15+ met pgvector-extensie. Geselecteerd op vingerafdruk-volume: ~50 GB voor 100.000 geïndexeerde documenten, lineair schaalbaar. RDS / Cloud SQL / managed ondersteund via standaard connectiestring. Zelfbeheer vereist pgvector + GIN uitbreiding.
03 · CACHE / QUEUE
Redis 7+ voor queue en caching. Klein geheugen (~2 GB RAM). Elasticache / Memorystore / Redis Cloud werken; in-cluster Redis-pod volstaat voor kleine deployments. Chart gebruikt Redis Sentinel voor HA.
04 · CORPUSOPSLAG
Enterprise: levert het publieke corpus als een doorzoekbare bundel (~280 GB gecomprimeerd). Wordt bij eerste installatie hersteld naar Postgres + object store (S3 / GCS / MinIO / Ceph). Optioneel: eigen websearch-adapters (Google / Brave API-sleutels) voor live verificatie, of overslaan als je alleen tegen het geïndexeerde corpus controleert.
05 · IDENTITEIT
SAML 2.0, LDAP, OIDC (Okta, Azure AD, Auth0, Keycloak), of ingebouwde mail-wachtwoord. Smartcard-auth (CAC/PIV) via OIDC voor overheid. Multi-tenant binnen één install — handig voor shared services over afdelingen.
06 · OBSERVABILITY
Prometheus-metrics endpoint + OpenTelemetry-traces. Auditlog als JSON; stuur door naar SIEM (Splunk, Datadog, Elastic, Grafana Loki). Grafana-dashboards als JSON in de repo. Werkt met standaard CNCF observability stack.
Standaard docker compose deployment.
Productieklare compose-stack: engine, Postgres, Redis, admin-UI. Voeg uw eigen authenticatie toe, configureer uw corpus, schaal horizontaal als single-node niet volstaat.
$ git clone https://github.com/NoplagLabs/noplag-engine$ cd engine$ cp .env.example .env$ vim .env # configure auth + corpus + secrets$ docker compose up -dCreating noplag-postgres ... doneCreating noplag-redis ... doneCreating noplag-engine ... doneCreating noplag-admin ... doneEngine ready at http://localhost:8080Admin UI at http://localhost:8081
# AuthAUTH_PROVIDER=saml # or oidc, ldap, builtinSAML_METADATA_URL=https://idp.acme.com/...# DatabasePOSTGRES_URL=postgres://user:pw@db:5432/noplagREDIS_URL=redis://redis:6379/0# CorpusCORPUS_BUNDLE_PATH=/srv/corpus/2026-05WEB_SEARCH_ENABLED=false # air-gap# ObservabilityOTEL_ENDPOINT=https://otel.acme.com:4317AUDIT_LOG_SINK=splunk-hec
- 10 mindocker compose tot klaar
- 8 / 16vCPU / GB RAM minimaal
- Apache2.0 · altijd gratis
- 0externe netwerk vereist (air-gap)
- SAMLLDAP · OIDC · CAC / PIV smartcard
Koppel aan uw bestaande identiteitssysteem.
Standaard enterprise SSO
Configureer SAML_METADATA_URL naar uw IdP. Getest met Okta, Auth0, OneLogin, Microsoft Entra (Azure AD), Ping Identity, Keycloak, Shibboleth. Groeps-attribuut voor roltoewijzing. SCIM 2.0 provisioning via admin-API.
Directe Active Directory-integratie
Voor on-prem AD of OpenLDAP. Bind-gegevens in .env; groepsquery’s bepalen toegang. Handig voor universiteiten, advocatenkantoren, overheid — SAML niet altijd nodig of AD dekt organisatie al.
OIDC voor cloud-native + CAC/PIV voor defensie
Standaard OIDC voor Okta / Auth0 / Cognito / Google Workspace. Voor defensie/federaal: CAC/PIV smartcard via OIDC. Koppelt smartcard-ID aan Noplag-gebruiker; groepskoppeling volgt DoD-directory.
Update op uw moment, niet het onze.
Self-hosted: u bepaalt updates. Wij taggen stabiele releases maandelijks (zelfde commit als cloud), en patches bij security-issues. Nieuwe tag pullen, docker compose pull && up -d, klaar. Migraties draaien automatisch. Air-gap: wij leveren gesigneerde bundels (RPM/DEB/tar) met losstaande handtekening; verifieer, transfereer via eigen softwareproces, installeer bij het volgende onderhoudsvenster. LTS-tags krijgen 18 maanden security updates; productie-tags volgen cloud-maandelijks. In beide gevallen: upgradepad en data zijn van u, wij bepalen alleen wat we opleveren.
Lees de upgrade-handleidingWat IT / DevOps echt vraagt vóór deployment.
Wat is gratis versus betaald in de self-hosted versie?
De Apache 2.0-engine is altijd gratis — kloon de repo, draai het. Gratis: de detectie-cascade + admin-UI + REST API. Enterprise biedt: publieke corpusbundle (~280GB index), SLA-support, gesigneerde air-gap releases, en migratiehulp.
Kunnen wij draaien zonder internet (air-gap)?
Ja. De engine heeft geen extern netwerk nodig voor indexed-corpus checks. Zet WEB_SEARCH_ENABLED=false om live-weblaag over te slaan. Enterprise levert gesigneerde releases met GPG-signatures — transfer via uw software-goedkeurproces. Getest in DoD + intelligence deployments.
Wat is de minimale hardwarevereiste?
Engine-container: 8 vCPU + 16 GB RAM. Postgres: 4 vCPU + 8 GB + ~50 GB voor 100k documenten. Redis: ~2 GB RAM. Voor 5.000 checks/maand volstaat één mid-range server. Voor 100k+ checks/maand: Kubernetes + horizontale schaal + managed Postgres.
Werkt dit met ons bestaande identiteitssysteem?
SAML 2.0 (Okta, Auth0, Entra, OneLogin, Keycloak, Shibboleth), LDAP/Active Directory, OIDC, CAC/PIV smartcard via OIDC voor federale deployments, of ingebouwde mail-wachtwoord. SCIM 2.0 provisioning ondersteund. Groepsattribuut → rol-mapping instelbaar.
Is pgvector een harde eis?
Dat zal nodig zijn voor de L3 vector-embeddingslaag (v1.2); v1.0 vereist dit niet. Postgres 15+ met pgvector. RDS / Cloud SQL / Cloud Postgres ondersteunen dit allemaal. Bij zelfbeheer van Postgres moet CREATE EXTENSION pgvector bij de installatie worden uitgevoerd. Zonder deze extensie draait de engine nog steeds de meegeleverde lagen, maar vervalt de semantische-parafrase-laag zodra die beschikbaar komt.
Hoe krijgen wij publieke corpus op een privaat netwerk?
Enterprise: geleverd als gesigneerde ~280 GB bundle. Transfer via uw importproces, herstel naar Postgres + objectstore bij eerste install. Maandelijks vernieuwd volgens cloud-tier corpus. Community: bouw uw eigen uit OpenAlex / CORE / Common Crawl dumps met ingest-scripts.
Hoe updaten wij production deployments?
Stabiele releases maandelijks getagd (zelfde commit als cloud). LTS-tags krijgen 18 maanden security. Upgrade: docker compose pull && up -d (Helm: helm upgrade). Migraties draaien automatisch; semver gehonoreerd; breaking changes in migratienotes.
Werkt dit met SOC 2 / HIPAA / FedRAMP?
Self-host maakt de naleving van regelgeving jouw verantwoordelijkheid — wij leveren de engine, jij draait deze binnen een omgeving die al aan jouw eisen voldoet. We zijn een opnieuw gelanceerd open-core bedrijf en hebben zelf geen SOC 2-, HIPAA- of FedRAMP-autorisaties; we beweren dit ook niet. Wat self-host teams met die vereisten biedt, is een manier om Noplag volledig binnen hun bestaande controles te draaien — air-gap + bare-metal + CAC/PIV ondersteund, PHI-controles aan jouw kant, niets verlaat je netwerk.
Kunnen wij de detectie-pipeline aanpassen?
Apache 2.0 — fork en wijzig. Self-host gebruikers hebben o.a. bronnen, aangepaste citation classifiers (regionale stijlen buiten default zes), en integratieplug-ins toegevoegd. Upstream PR’s welkom; wij reviewen en mergen wat in de gebruikersbasis past.
Wat met support?
Community: GitHub issues, publieke Discord, community-docs. Wij beantwoorden bugs en security, maar beloven geen SLA. Enterprise: toegewijde solutions engineer, directe supportcontact, responstijd-SLA contractueel, integratiehulp, migratie-assistentie.
Kloon de repo. docker compose up. Draai het binnen uw netwerk.
Apache 2.0 — altijd gratis. Enterprise-contracten bieden het indexeerbare publieke corpus-pakket, een dedicated support-SLA en ondertekende releases voor air-gap levering. Verder: github.com/NoplagLabs/noplag-engine en een docker-host onder eigen beheer.