Local Testing with Docker

Run the SDK locally against PostgreSQL without Kubernetes.

For a quick sanity check without a Kubernetes cluster, run the SDK on Docker against a local PostgreSQL container.

Start PostgreSQL locally

bash · terminal
1docker run -d \
2 --name securelytix-postgres \
3 -e POSTGRES_USER=vault \
4 -e POSTGRES_PASSWORD=vault \
5 -e POSTGRES_DB=vault \
6 -p 5432:5432 \
7 postgres:15

Authenticate with DockerHub

bash · terminal
1docker login -u securelytix2026
2# Enter your PAT token when prompted

Run the SDK container

bash · terminal
1docker run -d \
2 --name securelytix-sdk \
3 -p 8080:8080 \
4 -e VAULT_PORT=8080 \
5 -e DATABASE_URL="postgresql://vault:vault@host.docker.internal:5432/vault?sslmode=disable" \
6 -e API_KEY="<your-api-key>" \
7 securelytix2026/dev-sdk:1.0.4

Verify

bash · terminal
1curl http://localhost:8080/health
2# Expected response:
3{"status":"ok","timestamp":"2026-05-15T10:30:00Z","postgres":"ok"}

Test tokenization end-to-end

Tokenize a sample email and name. Send tokenized values in the detokenize request to recover the original values.

bash · terminal
1curl -sS -X POST "http://localhost:8080/api/v1/tokenize" \
2 -H "Content-Type: application/json" \
3 -d '{
4 "data": {
5 "email": "user@example.com",
6 "name": "user example"
7 }
8}'
9# Expected response:
10{"data":{"email":"qfhw@reviudq.cnr_stx","Name":"vpqhbmudaon_stx"},"Request_id":"...","latency":"19ms"}
bash · terminal
1curl -sS -X POST "http://localhost:8080/api/v1/detokenize" \
2 -H "Content-Type: application/json" \
3 -d '{"data":{"email":"<token>","name":"<token>"}}'
4# Expected response:
5{"data":{"email":"user@example.com","name":"user example"},"Status":"success","Request_id":"..."}

Cleanup

bash · terminal
1docker stop securelytix-sdk securelytix-postgres
2docker rm securelytix-sdk securelytix-postgres

Was this page helpful?