First of all, as a new user, let me say I am very grateful for the work the team has done. The offer perfectly meets my requirements and will enable my company to deploy awesome devices to our customers.
I have an architecture question regarding multi-container setup on our devices (raspberry pi 4).
Our devices need to run multiple services at the same time. One of them is a data acquisition pipeline that communicates with other machines and pulls data out, then uploads everything into our database. No problem here, I was able to setup each device with environment and service variables so that they run the same version of the app and each communicate with a different machine.
Now I have a second service that needs to run, and it’s for inference of a predictive machine learning model on the edge. The tricky part is that each device needs to run a different model. The inference pipeline container is the same for all devices, but each needs to use different config files (yaml) and artifacts (the compiled models) because each customer has a different model trained for them.
The model and config files will also need to be updated from time to time, ideally with minimal manual work.
How would I go about doing this with balenaCloud? Would I need a separate docker registry to hold customer-specific images and then configure the
docker-compose file to pull an image based on an environment variable? Is it possible to do everything inside balenaCloud to have automatic builds on
I could imagine to have a separate project for each customer, with no device added, just to build images of the data files and maybe I can pull these dynamically from the main project that has all the devices… not sure if that’s possible.
Thanks a lot!