Deploy with Co-op Cloud¶
Who this is for: hosters (sysadmins) — the recommended deployment.
This is the recommended way to run the stack for real use. Co-op Cloud
deploys the caption-ninja recipe to a server you control, using
abra and Docker Swarm. If you are evaluating or
developing locally, use Docker Compose instead.
The recipe repository is
captions.coop/caption-ninja.
It is private: ask a captions.coop maintainer for access before you start.
What you get¶
One recipe deploys three services behind a shared Traefik edge router, each on its own hostname:
| Address | Serves |
|---|---|
ui.<your-domain> |
The static web UI (capture page links, editor, overlays) |
caption.local.<your-domain> |
The speech service and capture page |
ui.<your-domain>/relay |
The private WebSocket relay |
TLS certificates are issued and renewed automatically by the Co-op Cloud Traefik.
What you need¶
- A server with a public IP, reachable on ports
80and443. abrainstalled on the machine you deploy from (abratalks to the server over the Docker socket or SSH; see the Co-op Cloud docs).- A domain with DNS records pointing at the server for the two hostnames above.
- Access to the private
caption-ninjarecipe repository.
Deploy¶
Create the app and answer the prompts. This asks for the domain and generates the secrets the services need.
abra app new caption-ninja
abra app <your-domain> deploy
Check the three services are running and the routers are healthy.
abra app <your-domain> ps
abra app <your-domain> logs -f
Configure it¶
Configuration and secrets are managed by abra. Show the current settings, then
edit the ones you need (the domain and the room/origin details).
abra app <your-domain> config
abra app <your-domain> secret ls
The relay only accepts pages whose origin is listed for it, and rooms and tokens must match between the relay and the speech service. See Relay and rooms and Access and sharing.
Exact option and secret names
The recipe names for individual settings and secrets live in the recipe's
own README. Use abra app <your-domain> config and
abra app <your-domain> secret ls to see what this recipe exposes.
Day-to-day operations¶
- Upgrade to a new recipe version:
abra app <your-domain> upgrade. - Back up the app's volumes and secrets:
abra app <your-domain> backup. - See Backups, upgrades and recovery and Logs, privacy and security.
Troubleshooting¶
If the app does not come up, check abra app <your-domain> ps and
abra app <your-domain> logs, confirm DNS points at the server, and make sure
ports 80/443 are reachable. See
Troubleshooting for the common symptoms.