/v1/chat/completions endpoint. You can run it on Masker-managed infrastructure, inside your own cloud account, or fully air-gapped with no outbound internet access. The right choice depends on where your PHI must reside and what your compliance program requires.
| Option | Best for | PHI residency | BAA |
|---|---|---|---|
| Masker hosted | Pilots, demos, early-stage teams | Fly.io US-West (sea/sjc) | Available on production beta |
| Self-hosted VPC | Production, regulated environments | Your cloud account | Not needed — PHI never leaves your VPC |
| Air-gapped / on-prem | Hospitals, DoD, strict security postures | Your own hardware | Not needed — Masker is fully offline |
Option 1 — Masker hosted
The hosted service runs at masker-voice.fly.dev. You do not deploy or manage any infrastructure.Sign in to the portal
Open masker-voice.fly.dev/portal/login and sign in with GitHub.
Option 2 — Self-hosted in your VPC
Masker ships as a container image atghcr.io/masker-dev/masker:latest. You can run it on Docker, Kubernetes, or your own Fly.io account.
- Docker
- Kubernetes
- Fly.io (your account)
The quickest path to a self-hosted instance. Suitable for single-node deployments or development environments.Place a TLS-terminating load balancer (ALB, GCLB, nginx) in front of the container. Masker speaks plain HTTP inside the VPC.
masker.secrets.env must contain at minimum:Getting a self-hosted deployment
Self-hosted deployments require an activation step during the beta period. Email hello@masker.dev to request a self-hosted license. The team will provide the image credentials and walk through the initial setup.Option 3 — Air-gapped / on-premises
Masker has no required outbound network calls beyond your chosen upstream LLM. If your environment runs the LLM internally — Ollama, vLLM, or your own Azure OpenAI tenant — Masker can run completely offline. Configure the internal LLM endpoint:Health checks
Every Masker deployment exposes a health endpoint you can wire into your load balancer or readiness probe:Upgrades
Masker follows semantic versioning. Minor and patch releases are drop-in upgrades. Major releases include a migration note in the GitHub release.MSKV1.*) is forward-compatible across all minor versions.
Observability
SetMASKER_METRICS_ADDR to expose a Prometheus metrics endpoint on that address. Available metrics:
masker_requests_total{agent, status}masker_request_duration_seconds{stage}— stages:detection,tokenize,upstream,rehydratemasker_redactions_total{kind, pass}masker_vault_size_bytes
Current limitations
- No Helm chart yet. Raw Kubernetes manifests only. Helm chart is on the May 30 roadmap.
- No Terraform module yet. Same timeline.
- Each Masker deployment is independent. A multi-tenant control plane is not available in the current release.