> ## Documentation Index
> Fetch the complete documentation index at: https://developer.verilock.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Self-Hosted Overview

> Deploy Verilock Identity on your own infrastructure with full data sovereignty

## Why Self-Host?

Verilock Identity Self-Hosted gives you full control over your KYC/AML compliance infrastructure. Your data never leaves your servers.

<CardGroup cols={3}>
  <Card title="Data Sovereignty" icon="shield-check">
    All verification data, documents, and PII stay on your infrastructure. No data transmitted to third parties.
  </Card>

  <Card title="Air-Gapped Deployments" icon="lock">
    Deploy behind your firewall. Only license heartbeats require outbound connectivity (with offline grace period).
  </Card>

  <Card title="Custom Compliance" icon="scale-balanced">
    Meet specific regulatory requirements (GDPR, CCPA, data residency) by controlling where data is stored and processed.
  </Card>
</CardGroup>

## Architecture

The self-hosted deployment runs as a set of Docker containers:

```
┌─────────────────────────────────────────────┐
│            Docker Compose Stack              │
│                                             │
│  ┌──────────┐  ┌──────────┐  ┌──────────┐  │
│  │ Verilock │  │PostgreSQL│  │  Redis   │  │
│  │   App    │  │    16    │  │    7     │  │
│  │  :8080   │  │  :5432   │  │  :6379   │  │
│  └──────────┘  └──────────┘  └──────────┘  │
│                                             │
│  ┌──────────┐  ┌──────────┐                 │
│  │  MinIO   │  │   AML    │                 │
│  │ (S3 alt) │  │ Engine   │                 │
│  │  :9000   │  │  :8000   │                 │
│  └──────────┘  └──────────┘                 │
└─────────────────────────────────────────────┘
```

| Service        | Purpose                                                   | Default Port    |
| -------------- | --------------------------------------------------------- | --------------- |
| **App**        | Verilock Identity (PHP-FPM + Nginx + Horizon + Scheduler) | 8080            |
| **PostgreSQL** | Primary database                                          | 5432 (internal) |
| **Redis**      | Cache, queues, sessions                                   | 6379 (internal) |
| **MinIO**      | S3-compatible document storage                            | 9000 (internal) |
| **AML Engine** | AML/PEP screening engine                                  | 8000 (internal) |

## Plans

| Feature                | Starter | Business | Enterprise |
| ---------------------- | ------- | -------- | ---------- |
| KYC Verification       | ✅       | ✅        | ✅          |
| AML Screening          | —       | ✅        | ✅          |
| Transaction Monitoring | —       | ✅        | ✅          |
| Database Validation    | —       | ✅        | ✅          |
| Face Search (1:N)      | —       | —        | ✅          |
| Wallet Screening       | —       | —        | ✅          |
| Biometric Auth         | —       | —        | ✅          |
| Support                | Email   | Priority | Dedicated  |

<Card title="Get a License" icon="key" href="https://verilock.io/portal/pricing">
  Visit the Verilock Portal to purchase a self-hosted license and download your deployment bundle.
</Card>

## Requirements

<AccordionGroup>
  <Accordion title="Hardware">
    * **CPU**: 2+ cores (4 recommended)
    * **RAM**: 4 GB minimum (8 GB recommended)
    * **Disk**: 20 GB minimum (SSD recommended)
  </Accordion>

  <Accordion title="Software">
    * Docker Engine 24+
    * Docker Compose v2+
    * Linux (Ubuntu 22.04+, Debian 12+, RHEL 9+) or macOS
  </Accordion>

  <Accordion title="Network">
    * Port 8080 open (or your configured port)
    * Outbound HTTPS to `license.verilock.com` (for license validation)
    * Optional: outbound for document OCR and face matching services
  </Accordion>
</AccordionGroup>
