FacePlugin
Get in Touch
Linux

Face Recognition SDK for Linux & Docker

Run face recognition and passive liveness detection in a single Docker container on your own Linux server, exposed as a local REST API. No images, templates, or match results ever leave your infrastructure.

Get in Touch View on GitHub
CPU-only, no GPU requiredREST API or in-process PythonNo per-call fees
Woman with phone doing face scan
Identity Verified
Face Match 99.98%
Requirements

What You Need to Run It on Linux

These are the exact minimum and recommended requirements published in the FaceRecognition-LivenessDetection-Docker repository — check the repo directly for the latest version, since SDK requirements can change between releases.

Host OSLinux with Docker Engine (Ubuntu 22.04 / 24.04 recommended)
Without Dockerglibc 2.38+, Python 3.10+ (Ubuntu 24.04 + Python 3.12 recommended)
CPU / RAM / Disk (min)2 cores / 4 GB / 4 GB
CPU / RAM / Disk (recommended)4 cores / 8 GB / 8 GB
Architecturelinux/amd64 (native libraries; Apple Silicon hosts run via amd64 emulation)
Quick Start

Install and Activate

Install the SDK, then activate it with a license key before calling any recognition function — every platform follows this same activate-then-initialize pattern.

  • Pull and run the Docker image on your Linux server.
  • Check GET /api/health to confirm the container is up.
  • Get your machine code, send it to FacePlugin, then activate with POST /api/activate and your license key.
bash + python
# Health check
curl -s http://127.0.0.1:8083/api/health

# Activate with your license key
curl -s -X POST http://127.0.0.1:8083/api/activate \
  -H "Content-Type: application/json" \
  -d '{"license_key": "FP1...."}'

# Or call the SDK in-process from Python
import sdk
machine_code = sdk.get_machine_code()
ret = sdk.activate("license.txt")   # 0 = success
ret = sdk.init_sdk()                # 0 = success
result = sdk.detect(base64_image, crop_image=False)
Licensing

How Licensing Works

Licenses are offline and bound to the container's machine code, which the REST API prints on first start (or returns from get_machine_code()). Send that machine code to FacePlugin to receive a key that unlocks recognition, liveness, or both — once activated, there's no per-call metering.

FAQ

Frequently Asked Questions

Does the Linux SDK send biometric data to the cloud?

No. Every stage of face recognition runs on your own server or directly on the device, depending on the platform – biometric templates never leave an environment you control.

How is the SDK licensed?

Licenses are offline and bound to a machine code, application ID, or bundle ID depending on the platform. Contact FacePlugin with that identifier to receive a license key – there are no per-call or per-match fees once licensed.

Where can I see the full source and open an issue?

The FaceRecognition-LivenessDetection-Docker integration is maintained publicly on GitHub at github.com/Faceplugin-ltd, where you can browse the code, file issues, and track releases.

Related

Pairs Well With

Ready to Add Face Recognition to Your Linux App?

Talk to our team to get a license key and a 15-day evaluation period started.

Contact Sales Explore the SDKs