Why self-host
Platforms and modes
The same engine ships on two platforms. Your enterprise agreement determines which platforms — and which modes of each — your team is granted.
A mode is a combination of the axes below; on Helm only billing is a mode —
the other axes are cluster configuration. Developer → Self Host shows the
modes your team can install.
Online billing authorizes and bills each request against Fish Audio and
needs outbound access; Offline records usage to a local signed ledger and
runs air-gapped.
The offline modes are air-gap capable — the Helm profile after mirroring images
and the chart into your own registry.
Choose the platform and mode that fit your constraints, then agree them with
your Fish Audio account team — your agreement determines what Developer →
Self Host offers you. Combinations beyond this standard set can be discussed
there too.
Both Helm profiles share one deployment procedure and differ only in a few values.
See Kubernetes deployment for the
Helm platform and All-in-One container
for the single-container platform.
What is included
Timestamp alignment is served by a separate forced-aligner component. It is
disabled by default, is not part of the offline model bundle, and is not built
into the All-in-One image, so
/v1/tts/stream/with-timestamp returns audio
without alignment data in those modes. Contact Fish Audio if your deployment
needs timestamps.Architecture at a glance
The table describes the Helm deployment; the All-in-One runs the same components inside one container.
Fish Audio delivers the deployment at the Kubernetes service level. Ingress, DNS,
TLS, external load balancing, and network allowlists are yours to choose and
configure.
Getting access
1
Agree the deployment scope
Self-hosting is enabled per team under an enterprise agreement. Reach out
through fish.audio/enterprise with your GPU
target, expected concurrency, and whether you need air-gapped operation.
2
Get your team enabled
Once your agreement is in place, Fish Audio grants your team the artifacts
it is entitled to: the Helm chart, the component images, and the All-in-One
image where applicable.
3
Create a deploy token
Sign in to fish.audio and open Developer → Self Host to see the
platforms and modes your team is granted and to create the token that
authenticates against the registry. See
Registry & license.
Next steps
Requirements
GPU, CPU, memory, storage, and platform baselines.
Registry & license
Create a deploy token and authenticate Docker and Helm.
Kubernetes deployment
Install, upgrade, roll back, and validate the Helm release.
All-in-One container
Run the whole stack from a single
docker run.Air-gapped deployments
Mirror artifacts, account for usage offline, and prove zero egress.
Operations
Monitoring signals, scaling, backups, and troubleshooting.
Releases
How versions are published, and which one to deploy.

