Software
- Ubuntu
- macOS
- Windows
Installing Docker Desktop is not enough — it must also be running (the whale icon in your menu bar / system tray).
docker run --rm hello-world fails with “Cannot connect to the Docker daemon” if Docker Desktop hasn’t been launched yet.start-application-services.sh needs python3 with the cryptography package to generate PROVIDER_AUTH_ENCRYPTION_KEY. Without it the script stops and tells you to set the key manually.externally-managed-environment (PEP 668). If you hit that error, create and activate a virtual environment first, then continue from inside it:Hardware
For the core stack — API, runtime, FerretDB, Redis, MinIO — with cloud model providers:
Recordings and transcripts accumulate in MinIO, so size disk for your call volume.
A GPU is not required unless you self-host models. If you do, see Running on GPUs — model images are large and the first build needs substantial disk.
Accounts
VoicEra provides no telephony and no models. Bring your own.Model providers — required
At least one provider for each of speech-to-text, text-to-speech, and a language model. One vendor can cover all three:openai, google, and sarvam each register STT, TTS, and LLM.
Browse what is available once running:
Telephony — required for phone calls
A Vobiz or Plivo account with at least one number. You need the account credentials and a number you can attach.You can skip telephony entirely at first. A
websocket agent runs the same pipeline from a browser, with no telephony account and no call charges. See Test and call with your agent.Optional
Without embedding credentials, everything works except knowledge-base ingestion.
Network
For local evaluation, none of this matters. For real phone calls, your telephony provider must reach your runtime from the public internet:
For testing, a tunnel such as
ngrok or cloudflared works. See Public voice URLs.
Ports
Published on the host by default:
PostgreSQL and Redis are not published. All ports are overridable — see Ports and defaults.
Checklist
- Docker Engine and Compose v2 installed and working
-
makeinstalled and on PATH -
python3withcryptographyavailable - 20 GB+ free disk
- Credentials for at least one STT, one TTS, and one LLM provider
- A telephony account and number, if you want real calls
- A public HTTPS hostname, if you want real calls
- Host ports free, or overrides chosen