Skip to content

Commit b4419cb

Browse files
committed
docker
1 parent b635ddc commit b4419cb

1 file changed

Lines changed: 20 additions & 0 deletions

File tree

README.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,26 @@ Electron also generates a new random local-access token on every launch. The ren
9898

9999
No cloud inference API key is required. The first synthesis can be slower while a model loads or prepares voice conditioning; later runs can reuse the warm model and cached conditioning.
100100

101+
### Docker
102+
103+
Docker packages the browser dev setup (frontend + backend, no Electron) into one container for local use. It is not a hosted deployment -- nothing publishes this container to a live URL.
104+
105+
**Build and run locally** with Docker Compose, from the repository root:
106+
107+
```powershell
108+
docker compose up
109+
```
110+
111+
This builds the image from the root `Dockerfile`, starts both the Vite frontend (`5173`) and the FastAPI backend (`8765`), and persists `~/.voice-lab` inside the container to the named `voice-lab-data` volume so downloaded models and voice profiles survive a restart. `docker-compose.yml` also loads `backend/.env` and sets `ALLOWED_ORIGINS` to the localhost dev origins by default -- edit that `environment:` block if you're reaching the container from another machine on your LAN.
112+
113+
**Or pull the prebuilt image** published by the `Docker` GitHub Actions workflow on every push to this branch:
114+
115+
```powershell
116+
docker run -p 5173:5173 -p 8765:8765 ghcr.io/solusops/studybuddy:latest
117+
```
118+
119+
Either way, the container does not bundle model assets -- run `npm run setup:voice-lab` (see above) once, either on the host before mounting `~/.voice-lab` in, or inside a shell in the running container, before using providers whose assets aren't installed yet.
120+
101121
## Shipped model assets
102122

103123
`npm run setup:voice-lab` is the supported TTS download command. It uses the repositories and exact revisions below rather than floating branches.

0 commit comments

Comments
 (0)