I’m currently working with the HOOPS Communicator Stream Cache (SC) Server and have a question regarding model access. In my spawnViewer function, I specify a local directory for the --model-search-directories parameter:
const modelDir = ${modelDirectory}/${project};
However, I would like to store my models in a MinIO bucket and access them directly without downloading them to the local file system. Is it possible to configure the SC Server to stream models directly from MinIO? If so, could you provide guidance on how to achieve this setup?
Alternatively, if accessing models from MinIO is not feasible, are there recommended practices for managing model storage and access in a way that minimizes local storage requirements?
Any insights or suggestions would be greatly appreciated.
Admittedly, I’m not familiar with MinIO but if it has functionaility and features similar to Amazon S3, it should be possible. We have a brief reference to using object storage in our docs. Perhaps the MinIO documentation has more technical information about going from a regular filesystem to object storage.
Yes, MinIO is fully S3-compatible and supports signed URLs just like Amazon S3. I’ve successfully used these signed URLs with client-side rendering (CSR) — the .scs file loads directly into the browser from object storage, and everything works well.
However, I’m now focused on server-side rendering (SSR) using the HOOPS Communicator SC Server. In this mode, the SC Server needs the .scz file to be physically available on the local file system. From my testing and the documentation, it seems the SC Server does not currently support loading .scz files directly via remote URLs (e.g., S3/MinIO signed links).
My Question:
Is there any supported way (or workaround) to:
Pass a signed URL to the SC Server for the .scz file, and
Have the SC Server fetch and stream the model to the viewer over WebSocket (in SSR mode) — without manually downloading the file to disk?
…this is not a supported workflow with the SSR feature of the server. Indeed, the Stream Cache file would need to be first unbundled/unzipped in the workspace directory.