SELF-HOSTdocker compose · 폐쇄망 · BYO auth

표절 검사 자체 호스팅 솔루션

Apache 2.0 엔진을 귀하 인프라에서 직접 실행합니다. 일반 설치에는 docker compose, 쿠버네티스에는 Helm 차트, 폐쇄망 환경엔 베어메탈 지원. 귀하의 서버, 귀하의 Postgres, 귀하의 인증, 귀하의 데이터. 귀하 VPC에서 외부로 나가는 트래픽 없음. 클라우드가 불가능할 때 적합한 배포 방식.

docker compose로 10분 내 설치폐쇄망 지원BYO Postgres · SAML / LDAP / OIDC
누가 셀프호스트하나요

클라우드가 안되는 네 가지 상황.

로펌

특권 보호 배포

브리핑, 메모, 발견 자료 등 보호명령 하 문서는 써드파티 클라우드로 갈 수 없습니다.

  • 폐쇄망 네트워크 지원
  • SAML / LDAP / Active Directory 인증
  • 기존 컴플라이언스 환경 내 동작
대학

IRB 검토 가능, 온캠퍼스 내 구축

학생 제출, 임상 연구, IRB 사전 승인 연구 등 — 엄격한 데이터 거주 요건.

  • 귀하의 네트워크에서 Canvas/Moodle과 나란히 운용
  • Apache 2.0 — 귀하 IT가 repo를 서명 전 직접 클론
  • 클라우드가 적합한 경우 EU 거주 모드 지원
정부

폐쇄망 + FedRAMP 근접

연방, 주, 국방 — 내용은 기관 네트워크 밖으로 나갈 수 없습니다.

  • 베어메탈 설치 옵션 (Docker 불필요)
  • OIDC / CAC / PIV 스마트카드 인증 지원
  • STIG 강화 가능한 베이스 이미지 (RHEL UBI)
기업

내부 IP + 영업비밀 보호

R&D 문서, M&A 초안, 내부 백서 — 방화벽 내에만 있어야 하는 내용.

  • 수평 확장용 쿠버네티스 Helm 차트
  • BYO Postgres + Redis + 오브젝트 스토어
  • 감사로그 → SIEM (Splunk / Datadog / Elastic)
설치 옵션

세 가지 배포 방식. 한 엔진.

귀하의 인프라와 맞는 경로를 선택하세요. 탐지 엔진은 셋 모두 동일합니다; 운영 패키지만 다릅니다.

01

01 · docker compose (10분)

git clone github.com/NoplagLabs/noplag-engine && cd engine && docker compose up -d. 이 compose 파일에는 Postgres, Redis, 엔진 컨테이너, 최소한의 관리자 UI가 포함되어 있습니다. 기본 설정은 소규모 팀(하루 약 1,000회 검사)에 적합한 단일 노드 배포입니다. 현재 상태로도 운영 환경에 바로 사용할 수 있습니다. 추가로 필요한 작업은 인증 시스템과 corpus를 직접 준비하는 것입니다.

02

02 · Kubernetes Helm 차트

helm install noplag noplag/engine --values your-values.yaml. chart는 Postgres + Redis를 외부화(귀하의 클러스터 서비스 지시)하며, 엔진 파드를 수평 확장하고, Prometheus 지표도 노출합니다. 리소스 제한, 복제 수, PV 클레임 등 Helm 값 문서화.

03

03 · 베어메탈 / 폐쇄망

Docker를 쓸 수 없는 환경(일부 국방/정부). 엔진과 모든 의존성 고정 tar 아카이브로 배포; ansible playbook으로 RHEL UBI 또는 Ubuntu LTS에 설치. 폐쇄망 친화적: 설치 후 외부 네트워크 호출 불필요. STIG 강화 가능 베이스 이미지, OIDC / CAC / PIV 모듈 포함.

시스템 요구사항

구동에 필요한 것.

소규모 팀 배치를 위한 소박한 하드웨어 요구. 프로덕션 규모엔 수평 확장. 엔터프라이즈는 인증부터 말뭉치까지 모두 직접 준비.

01 · 엔진 노드

엔진 컨테이너는 8 vCPU + 16 GB RAM 최소 필요. 1,500단어 문서 기준 47초에 동시 약 50건 처리. 수평 확장시 로드밸런서 뒤에 엔진 파드 추가 — 쿠버네티스 Helm 차트가 CPU+대기열 심도로 자동화.

02 · 데이터베이스

PostgreSQL 15+ 및 pgvector 확장. 말뭉치 크기에 맞춰 크기 결정: 10만 문서 인덱스 기준 약 50 GB, 선형 확장. RDS / Cloud SQL / 매니지드 인스턴스 표준 연결 지원. 자체 운영 Postgres는 pgvector + GIN 확장 활성화 필요.

03 · 캐시 / 큐

작업 큐 및 캐시에 Redis 7+ 사용. 대략 2GB RAM 필요. Elasticache/ Memorystore/ Redis Cloud 모두 사용 가능; 소규모에는 in-cluster Redis 파드 허용. chart는 기본으로 Redis Sentinel로 HA 제공.

04 · 말뭉치 저장

Enterprise: 공개 코퍼스를 인덱싱 가능한 번들로 제공합니다(압축 시 약 280GB). 최초 설치 시 Postgres와 오브젝트 스토어(S3 / GCS / MinIO / Ceph)에 복원됩니다. 선택 사항: 실시간 검증을 위해 웹 검색 어댑터(Google / Brave API 키)를 직접 연결할 수 있습니다. 인덱싱된 코퍼스만으로 검사할 경우 생략할 수 있습니다.

05 · 식별자

SAML 2.0, LDAP, OIDC(Okta, Azure AD, Auth0, Keycloak) 또는 내장 이메일-비밀번호. 정부 환경은 OIDC 브릿지로 CAC/PIV 스마트카드 인증 지원. 하나의 설치 내 멀티테넌시 지원 — 부서간 공유서비스에 적합.

06 · 관측성

Prometheus metrics endpoint + OpenTelemetry traces. 감사로그는 JSON으로 방출; 귀하의 SIEM(Splunk, Datadog, Elastic, Grafana Loki)으로 파이프. Grafana JSON 대시보드가 repo에 포함. 표준 CNCF 관측성 스택과 호환.

10분 만에 배포

표준 docker compose 배포.

엔진, Postgres, Redis, admin UI를 포함한 프로덕션 준비 compose 스택. 인증 연동, 말뭉치 구성, 단일 노드로 부족해지면 수평 확장

$ install · bash복사
$ 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 · 설정복사
# 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분docker compose로 준비
  • 8 / 16vCPU / GB RAM 최소
  • Apache2.0 · 영구무료
  • 0외부 네트워크 요구(폐쇄망)
  • SAMLLDAP · OIDC · CAC / PIV 스마트카드
인증 + 식별

기존 인증 인프라에 연동.

01 · SAML 2.0

표준 엔터프라이즈 SSO

귀하 IdP의 SAML_METADATA_URL로 연결. Okta, Auth0, OneLogin, Microsoft Entra(Azure AD), Ping Identity, Keycloak, Shibboleth와 검증됨. 그룹 속성으로 역할 접근 제어. SCIM 2.0 사용자 프로비저닝은 admin API로 지원.

즉시 프로비저닝 + SCIM 동기화 · 일반 엔터프라이즈 패턴.
02 · LDAP / AD

직접 AD 연동

온프레미스 AD 또는 OpenLDAP 환경용. .env에 바인딩 자격증명 설정, 그룹 쿼리로 접근 제어. SAML이 과한 환경이나 이미 AD를 쓰는 대학/로펌/정부 배포에 적합.

중첩 그룹 쿼리 지원 · 평균 5초 인증 지연.
03 · OIDC + 스마트카드

클라우드 OIDC + 국방용 CAC/PIV

Okta / Auth0 / Cognito / Google Workspace 등 표준 OIDC. 국방/연방은 OIDC 브릿지 통한 CAC/PIV 스마트카드 인증. 스마트카드 식별자를 Noplag 유저로 매핑, 그룹 매핑은 조직 DoD 스마트카드 디렉터리 반영.

FedRAMP 근접 · DoD CAC + GSA PIV 검증 경로.
패치 관리

업데이트 일정은 귀하가 결정.

셀프호스트는 업데이트 주기를 귀하가 통제. 안정 릴리스는 매달 태그(클라우드와 같은 커밋), 보안 이슈 발견 시 패치 릴리스. 새 태그 pull, docker compose pull && up -d 실행. 마이그레이션은 컨테이너 시작시 자동 수행. 폐쇄망 환경: 서명된 릴리스 번들(RPM/DEB/tar) 발행, 분리 서명 제공; 서명 검증 뒤 기존 소프트웨어 반입 프로세스대로 옮기고, 점검 기간 중 설치. LTS 태그는 18개월간 보안 패치, 프로덕션 태그는 클라우드와 동일 주기로 월간 업데이트. 전환 경로나 데이터 모두 귀하 소유; 저희가 통제하는 것은 registry에 발행하는 것뿐.

업그레이드 가이드 읽기
자주 묻는 질문

IT/DevOps가 실제로 묻는 배포 전 질문.

셀프호스팅 버전에서 실제 무료와 유료는 어디까지입니까?

Apache 2.0 엔진 자체는 영구 무료 — repo를 클론해서 실행하면 끝. 무료로 제공되는 범위에는 탐지 cascade + admin UI + REST API가 포함. 엔터프라이즈에는: 인덱스 가능한 공개 말뭉치 번들(~280GB 사전구축 인덱스), 전담 지원 SLA, 서명 릴리스 폐쇄망 납품, 마이그레이션 지원이 추가.

인터넷 없이(폐쇄망) 쓸 수 있습니까?

네. 인덱스 말뭉치 검사만 쓸 경우 엔진은 외부 네트워크 접근 불필요. LIVE-WEB 레이어를 생략하려면 WEB_SEARCH_ENABLED=false로 설정. 엔터프라이즈는 서명 분리 GPG 릴리스 번들로 제공 — 기존 소프트웨어 반입 절차로 전송 가능. DoD 및 정보기관 배포에서 검증됨.

최소 하드웨어 요구는?

엔진 컨테이너: 8 vCPU + 16 GB RAM. Postgres: 4 vCPU + 8 GB + 약 50 GB(10만 문서 인덱스 기준). Redis: 약 2GB RAM. 월 5,000회 검사라면 중간급 서버 하나면 모두 가능. 월 10만 회 이상은 쿠버네티스 + 수평 엔진 확장 + 매니지드 Postgres.

기존 식별 인프라와 연동됩니까?

SAML 2.0(Okta, Auth0, Entra, OneLogin, Keycloak, Shibboleth), LDAP / Active Directory, OIDC, 연방 배포는 OIDC 브릿지 통한 CAC/PIV 스마트카드, 또는 내장 이메일-비밀번호. SCIM 2.0 프로비저닝 지원. 그룹 속성→역할 매핑 설정 가능.

pgvector는 필수입니까?

L3 벡터 임베딩 레이어(v1.2)에서는 필요할 예정입니다. v1.0에서는 필요하지 않습니다. Postgres 15 이상과 pgvector가 필요합니다. RDS, Cloud SQL, Cloud Postgres 모두 지원합니다. 직접 운영하는 Postgres는 배포 시 CREATE EXTENSION pgvector 명령이 필요합니다. pgvector가 없으면 엔진은 기본 제공 레이어만 실행되며, 추후 제공될 의미 기반 패러프레이즈 레이어는 사용할 수 없습니다.

공개 말뭉치를 폐쇄망에 가져오려면?

엔터프라이즈: 서명된 약 280GB 번들로 제공. 기존 데이터 반입 절차대로 전송, 최초 설치 시 Postgres+오브젝트스토어로 복원. 클라우드와 동기화하여 매월 재발송. 커뮤니티 버전은 OpenAlex/CORE/Common Crawl 공개 덤프와 ingest 스크립트로 직접 구축.

프로덕션 환경의 업그레이드 절차는?

안정 릴리스는 매달 태그(클라우드 동기화). LTS 태그는 18개월 보안 패치. 표준 업그레이드는 docker compose pull && up -d(Helm: helm upgrade). 마이그레이션은 시작 시 자동; semver 준수; 파괴적 변경은 마이그레이션 노트에 명시.

SOC 2 / HIPAA / FedRAMP과 호환됩니까?

컴플라이언스는 셀프호스트 쪽 책임 — 엔진만 제공, 이미 요건 충족하는 환경 내에서 실행. 당사는 재출범 오픈코어 회사로 SOC 2, HIPAA, FedRAMP 인증을 직접 보유하지 않음; 주장하지도 않음. 셀프호스트가 해당 팀에 제공하는 것은 완전 통제 내에서 Noplag을 운용하는 방법 — 폐쇄망, 베어메탈, CAC/PIV 지원, PHI 제어는 귀하 쪽 관리, 네트워크 외부 전송 없음.

탐지 파이프라인 커스터마이즈 가능합니까?

Apache 2.0 — 포크 후 수정 가능. 셀프호스트 운영진이 커스텀 말뭉치 소스 추가, 인용 분류기 지역화, 통합 플러그인 등 적용 사례 있음. 업스트림 PR도 환영; 폭넓은 유저층에 적합하면 반영.

지원 체계는?

커뮤니티: GitHub 이슈, 공개 Discord, 커뮤니티 docs. 버그/보안 리포트엔 대응하나 SLA 보장 없음. 엔터프라이즈: 전담 엔지니어, 지정 지원 담당, 계약 연동 SLA, 통합/이행 지원.

repo를 클론. docker compose up. 귀하 네트워크 내 직접 운영.

Apache 2.0 — 영구적으로 무료입니다. 엔터프라이즈 계약 시 색인 가능한 공개 corpus 번들, 전용 지원 SLA, 서명된 릴리스의 에어갭 전달이 추가됩니다. 그 외에는 github.com/NoplagLabs/noplag-engine와 사용자가 직접 관리하는 docker 호스트만 있으면 됩니다.

표절 검사 자체 호스팅, 온프레미스 및 EU 데이터