From 729b38999e53ab225a11e84548b70add9802c046 Mon Sep 17 00:00:00 2001 From: Cedric Verstraeten Date: Sun, 25 Jun 2023 22:14:23 +0200 Subject: [PATCH] add deploy with balena --- README.md | 6 ++---- deployments/README.md | 9 +++++++++ deployments/balena/README.md | 17 +++++++++++++++-- 3 files changed, 26 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 0591fa4..d0dabda 100644 --- a/README.md +++ b/README.md @@ -78,13 +78,10 @@ If you want to connect to an USB or Raspberry Pi camera, [you'll need to run our ## Quickstart - Balena -Run Kerberos Agent with Balena super powers. Monitor your agent with seamless remote access, and an encrypted https endpoint. -Checkout our fleet on [Balena Hub](https://hub.balena.io/fleets?0%5B0%5D%5Bn%5D=any&0%5B0%5D%5Bo%5D=full_text_search&0%5B0%5D%5Bv%5D=agent), and add your agent. +Run Kerberos Agent with [Balena Cloud](https://www.balena.io/) super powers. Monitor your Kerberos Agent with seamless remote access, over the air updates, an encrypted public `https` endpoint and many more. Checkout our application `video-surveillance` on [Balena Hub](https://hub.balena.io/apps/2064752/video-surveillance), and create your first or fleet of Kerberos Agent(s). [![deploy with balena](https://balena.io/deploy.svg)](https://dashboard.balena-cloud.com/deploy?repoUrl=https://github.com/kerberos-io/agent) -**_Work In Progress_** - Currently we only support IP and USB Cameras, we have [an approach for leveraging the Raspberry Pi camera](https://github.com/kerberos-io/camera-to-rtsp), but this isn't working as expected with Balena. If you require this, you'll need to use the traditional Docker deployment with sidecar as mentioned above. - ## A world of Kerberos Agents The Kerberos Agent is an isolated and scalable video (surveillance) management agent with a strong focus on user experience, scalability, resilience, extension and integration. Next to the Kerberos Agent, Kerberos.io provides many other tools such as [Kerberos Factory](https://github.com/kerberos-io/factory), [Kerberos Vault](https://github.com/kerberos-io/vault) and [Kerberos Hub](https://github.com/kerberos-io/hub) to provide additional capabilities: bring your own cloud, bring your own storage, central overview, live streaming, machine learning etc. @@ -122,6 +119,7 @@ We have documented the different deployment models [in the `deployments` directo - [Red Hat OpenShift with Ansible](https://github.com/kerberos-io/agent/tree/master/deployments#4-red-hat-ansible-and-openshift) - [Terraform](https://github.com/kerberos-io/agent/tree/master/deployments#5-terraform) - [Salt](https://github.com/kerberos-io/agent/tree/master/deployments#6-salt) +- [Balena](https://github.com/kerberos-io/agent/tree/master/deployments#1-balena) By default your Kerberos Agents will store all its configuration and recordings inside the container. To help you automate and have a more consistent data governance, you can attach volumes to configure and persist data of your Kerberos Agents, and/or configure each Kerberos Agent through environment variables. diff --git a/deployments/README.md b/deployments/README.md index c6b5250..184865b 100644 --- a/deployments/README.md +++ b/deployments/README.md @@ -14,6 +14,7 @@ We will discuss following deployment models. - [5. Kerberos Factory](#5-kerberos-factory) - [6. Terraform](#6-terraform) - [7. Salt](#7-salt) +- [8. Balena](#8-balena) ## 0. Static binary @@ -58,3 +59,11 @@ To be written ## 7. Salt To be written + +## 8. Balena + +Balena Cloud provide a seamless way of building and deploying applications at scale through the conceps of `blocks`, `apps` and `fleets`. Once you have your `app` deployed, for example our Kerberos Agent, you can benefit from features such as: remote access, over the air updates, an encrypted public `https` endpoint and many more. + +Together with the Balena.io team we've build a Balena App, called [`video-surveillance`](https://hub.balena.io/apps/2064752/video-surveillance), which any can use to deploy a video surveillance system in a matter of minutes with all the expected management features you can think of. + +> Learn more [about Kerberos Agent with Balena](https://github.com/kerberos-io/agent/tree/master/deployments/balena). diff --git a/deployments/balena/README.md b/deployments/balena/README.md index b2f83df..b9b6af9 100644 --- a/deployments/balena/README.md +++ b/deployments/balena/README.md @@ -1,8 +1,21 @@ # Deployment with Balena -If you're looking for a way to quickly and easily get up and running with an Kerberos Agent for your home network, this is the project for you. +Balena Cloud provide a seamless way of building and deploying applications at scale through the conceps of `blocks`, `apps` and `fleets`. Once you have your `app` deployed, for example our Kerberos Agent, you can benefit from features such as: remote access, over the air updates, an encrypted public `https` endpoint and many more. -We provide two mechanisms to deploy Kerberos Agent to your Balena Cloud fleet: +We provide two mechanisms to deploy Kerberos Agent to a Balena Cloud fleet: 1. Use Kerberos Agent as [a block part of your larger application](https://github.com/kerberos-io/balena-agent-block). 2. Use Kerberos Agent as [a stand-a-lone application](https://github.com/kerberos-io/balena-agent). + +## Block + +Within Balena you can build the concept of a block, which is the equivalent of container image or a function in a typical programming language. + +The idea of blocks, you can find a more thorough explanation [here](https://docs.balena.io/learn/develop/blocks/), is that you can compose and combine multiple `blocks` to level up to the concept an `app`. + +You as a developer can choose which `blocks` you would like to use, to build the desired `application` state you prefer. For example you can use the [Kerberos Agent block](https://hub.balena.io/blocks/2064662/agent) to compose a video surveillance system as part of your existing set of blocks. + +You can the `Kerberos Agent` block by defining following elements in your `compose` file. + + agent: + image: bh.cr/kerberos_io/agent