Prerequisites
The REST API currently requires no authentication — run the server on a private network and restrict access at the network layer. See the API reference.
1. Load the container image
You receive the container as a compressed archive plus asha256 checksum. Verify integrity, then load it into Docker.
- H1 package
- M package
2. Start the container
The server is self-contained — all weights and assets are baked into the image, so no volume mounts are required.- H1 package
- M package
3. Air-gapped install
For environments with no outbound network, transfer the.tar.gz archive via your approved process, then run sha256sum -c, docker load, and docker run exactly as above. No registry access is needed — the image is self-contained.
4. Verify the deployment
1
Health check
{"status": "loading"} means models are still initialising — retry. See the API reference for all health states.2
Interactive API docs
Open
http://localhost:8080/docs for a Swagger UI to explore endpoints and try calls. Service discovery is at http://localhost:8080/bioptimus/.3
Test with the Bioptimus SDK
Managing the container
Environment variables
Set with-e at start:
Troubleshooting
curl: (7) Failed to connect
curl: (7) Failed to connect
Container not running or still starting. Check
docker ps and docker logs bioptimus-server./ping returns {"status": "loading"}
/ping returns {"status": "loading"}
Models are still loading. Wait for the
models ready log line./ping returns {"status": "unhealthy"}
/ping returns {"status": "unhealthy"}
The GPU is no longer available, or the CUDA context was corrupted. Check
nvidia-smi on the host and restart the container.Container exits immediately
Container exits immediately
Common causes: no CUDA GPU detected (a GPU is required), port conflict, or insufficient memory. Run
docker logs bioptimus-server for the error.Out of GPU memory
Out of GPU memory
The server auto-batches concurrent requests (max batch size 32). Reduce the number of concurrent SDK requests to lower peak memory use.

