Imitate Balena Cloud locally

Hey all,

I’m currently using balena.io cloud to deploy containers to a series of IoT devices, but I’d like to bring it in-house. I know this is possible but not sure about one step, so thought maybe someone here can help.

Balena works by utilizing Git. You push to your repo, and Balena cloud kicks off a container build and deploys them to your devices (fleet).

I was trying to figure out how to do this locally when I came across an article from Stackahoy (https://blog.stackahoy.io/a-guide-to-automated-docker-deployments-w-gitlab-ci-510966dd6022) on using GitLab and a CLI tool they made. But then I read that I have to have an account with Stackahoy and register my servers and repos with them…in which case I may as well stick with Balena.

I have my repos on a local GitLab instance, which I push to, at which point I would have GitLab-CI build my container, but then I’m stuck on the best approach to deploying to my devices.

Obviously as a developer I can write my own solution to this, but I want to make sure I’m doing it the “docker way” (if there is such a way), so I want to pick y’alls brains on what you think is the best approach to this,

Didn’t I read somewhere that docker is working on a “deploy” feature?

Thank you for any and all input.
Paul

All good, with a PHP webhook on my CentOS server, and a system hook set up in GitLab, I can now create a merge to master and automate a build and deploy to my devices.