Docker¶
Sieve ships with a Dockerfile and docker-compose.yml for easy
containerized deployment with PostgreSQL persistence.
Docker Compose (recommended)¶
docker compose up --build
This starts:
sieve-server on port
8080PostgreSQL 16 on port
5432(data persisted in a Docker volume)
The server automatically imports sanctions lists on first startup when the database is empty.
Standalone Docker¶
Build and run without Compose (in-memory mode, no PostgreSQL):
docker build -t sieve-aml .
docker run -p 8080:8080 sieve-aml
Environment Variables¶
Variable |
Default |
Description |
|---|---|---|
|
(none) |
Set to |
|
— |
JDBC URL for PostgreSQL (e.g., |
|
— |
Database username |
|
— |
Database password |
|
|
Enable/disable OFAC SDN list |
|
|
Default match score threshold |
Verify¶
# Health check
curl http://localhost:8080/api/v1/health
# Screen a name
curl -X POST http://localhost:8080/api/v1/screen \
-H "Content-Type: application/json" \
-d '{"name": "Vladimir Putin"}'