Building the image
From the project root:How the image is built
TheDockerfile uses a two-stage build to keep the final image small:
| Stage | Base image | Purpose |
|---|---|---|
builder | rust:1.88-slim | Compiles the release binary |
| Runtime | debian:bookworm-slim | Runs the binary; no Rust toolchain included |
ca-certificates is installed in the runtime image. The final image contains only the binary and its minimal OS dependencies.
Volume mounts (required)
Running the container
Replace the host paths below with the actual locations of your asset directories:frame and idol volumes are mounted read-only (:ro) since the service only reads from them. The render volume must be writable.
Docker Compose
Overriding RUST_LOG
The image setsRUST_LOG=info by default. Override it at runtime:
RUST_LOG values.
The container exposes port
8899. Map it to a different host port (e.g., -p 80:8899) or place an Nginx reverse proxy in front of it. See the Nginx reverse proxy guide.