Manual Setup¶
This section will teach you how to get mirumoji running without using any of the Launchers
You can run the Docker Compose Application yourself with the pre-built images published
to Docker Hub or with Locally Built images
When To Use This
-
Most users should use the
CLIorDesktop Launchersetup -
They handle the
Compose File,IPv4 LAN IP Reoslution, andConfigurationautomatically -
Use a manual install when you want full control of the
Compose File, for example, to add a reverse-proxy or change ports
Get a Compose File¶
-
The
Compose Fileis generated from a packaged template for your chosenTranscription BackendandImage Source -
The simplest way to produce a correct one is the CLI's
mirumoji rendercommand, which writes the file and exits without starting anything
Flags
-
--transcribe modal|local→ Which Transcription Backend The File Targets -
--pull→ Reference The Pre-Built Docker Hub Images -
--output→ Where To Write The File
This gives you a plain docker-compose.yaml that you can read, edit, and run with
ordinary Docker tooling
Create an Environment File¶
Passing Configurations To The Server
-
The Compose file reads its configuration from environment variables
-
Every value has a
${VAR:-default}fallback, so you only set what your backend needs
# (1)!
MODAL_TOKEN_ID=your-token-id
MODAL_TOKEN_SECRET=your-token-secret
# (2)!
OPENAI_API_KEY=sk-...
# (3)!
HOST_LAN_IP=192.168.1.50
- Required For The
ModalBackend (Omit For TheLocalBackend) - Optional LLM Features
- Set This To Your Machine's
IPv4 LAN IPSo That The Frontend's HTTPS Certificate + Other Devices On Your Network Can Reach It. Defaults to127.0.0.1(Host Only)
View The Full List Of Accepted Variables
Start Docker Compose¶
The application should be live on your https://localhost, and on https://<HOST_LAN_IP> from another device in your local network
Ports¶
| Service | Port | Purpose |
|---|---|---|
| frontend | 80 |
HTTP → Redirects to HTTPS |
| frontend | 443 |
HTTPS (Self-Signed Certificate Built For HOST_LAN_IP) |
| backend | 8000 |
FastAPI Server |
Backend Access
-
The
frontendservice runs anNginxserver, which serves theReactapp via HTTPS + the self-signed certificate -
This
Nginxserver also configures a reverse-proxy for the application's internal Docker network pointing to thebackendserver underhttps://localhost/api, so the FastAPI can be accessed through there as well
Data¶
Docker Volumes
-
Your profiles, media, and database live in the
datavolume -
Application logs live in the
logsvolume -
These survive both restarts and version bumps
-
Removing those volumes deletes your data
Building Images Locally¶
To build the Docker Images from source instead of pulling the pre-built ones from Docker Hub, use mirumoji render with --build and run docker compose build from a clone of the Mirumoji Repository before running docker compose up
The CLI Setup automates this end-to-end with mirumoji up --build