mirror of
https://github.com/kerberos-io/agent.git
synced 2026-08-23 15:08:32 +00:00
add balena deployment (app + block)
This commit is contained in:
44
deployments/balena/README.md
Normal file
44
deployments/balena/README.md
Normal file
@@ -0,0 +1,44 @@
|
||||
# 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.
|
||||
|
||||
This project is a [balenaCloud](https://www.balena.io/cloud) stack with the following services:
|
||||
|
||||
- [Kerberos Agent](https://github.com/kerberos-io/agent) is a cutting edge video surveillance management system made available as Open Source under the MIT License.
|
||||
- [RTSP simple server](https://github.com/kerberos-io/rtsp-simple-server) a proxy that translates a USB camera and RPi camera to a RTSP h264 stream. The stream can then be connected to Kerberos Agent with `rtsp://kerberos.local:8554/usbcam` or `rtsp://kerberos.local:8554/rpicam`.
|
||||
|
||||
balenaCloud is a free service to remotely manage and update your IoT devices through an online dashboard interface, as well as providing remote access to the Kerberos Agent web interface without any additional configuation.
|
||||
|
||||
## Getting Started
|
||||
|
||||
You can one-click-deploy this project to balena using the button below:
|
||||
|
||||
[](https://dashboard.balena-cloud.com/deploy?repoUrl=https://github.com/kerberos-io/agent/tree/master/deployments/balena/app)
|
||||
|
||||
## Manual Deployment
|
||||
|
||||
Alternatively, deployment can be carried out by manually creating a [balenaCloud account](https://dashboard.balena-cloud.com) and application,
|
||||
flashing a device, downloading the project and pushing it via the [balena CLI](https://github.com/balena-io/balena-cli).
|
||||
|
||||
### Application Environment Variables
|
||||
|
||||
Application environment variables apply to all services within the application, and can be applied fleet-wide to apply to multiple devices.
|
||||
|
||||
| Name | Description |
|
||||
| -------------- | ------------------------------------------------------------------------ |
|
||||
| `SET_HOSTNAME` | Set a custom hostname on application start. Default is `kerberos-agent`. |
|
||||
|
||||
## Usage
|
||||
|
||||
### Initial setup
|
||||
|
||||
Once your device joins the fleet you'll need to allow some time for it to download the application.
|
||||
|
||||
On your router or DHCP server assign a static IP to your AdGuard Home device.
|
||||
|
||||
1. Connect to `http://YOUR-DEVICE-IP` or depending on the hostname `http://kerberos-agent.local` in your browser
|
||||
2. Sign-in with the default username and password `root`, `root`.
|
||||
3. Go to the configuration page and fill-in the RTSP url of your IPCamera or if using a USB or Raspberry Pi camera the proxy url as mentioned above.
|
||||
4. Press save, and the Kerberos Agent will connect to your camera.
|
||||
|
||||
Documentation for the Kerberos Agent and other services can be found at https://doc.kerberos.io/
|
||||
56
deployments/balena/app/app/balena.yaml
Normal file
56
deployments/balena/app/app/balena.yaml
Normal file
@@ -0,0 +1,56 @@
|
||||
name: video-surveillance
|
||||
description: >-
|
||||
Kerberos Agent is a cutting edge video surveillance management system
|
||||
made available as Open Source under the MIT License
|
||||
version: 3.0.0
|
||||
type: sw.application
|
||||
assets:
|
||||
repository:
|
||||
type: blob.asset
|
||||
data:
|
||||
url: 'https://github.com/kerberos-io/agent'
|
||||
logo:
|
||||
type: blob.asset
|
||||
data:
|
||||
url: >-
|
||||
https://raw.githubusercontent.com/kerberos-io/balena-agent/master/logo.png
|
||||
data:
|
||||
defaultDeviceType: raspberrypi3
|
||||
supportedDeviceTypes:
|
||||
- raspberrypi4-64
|
||||
- fincm3
|
||||
- raspberrypi3
|
||||
- raspberrypi3-64
|
||||
- raspberrypi400-64
|
||||
- intel-nuc
|
||||
- genericx86-64-ext
|
||||
post-provisioning: >-
|
||||
|
||||
Kerberos.io is a cutting edge video surveillance system with a strong focus on user experience, scalability, resilience, extension and integration. Kerberos.io provides different solutions, but from a high level point of view it comes into two flavours: Kerberos Agent and Kerberos Enterprise Suite. Bottom line Kerberos Enterprise Suite extends Kerberos Agent with additional components such as Kerberos Factory, Kerberos Vault and Kerberos Hub.
|
||||
|
||||
### Kerberos Agent
|
||||
|
||||
- Installation in seconds (Docker, Balena, Snap, etc).
|
||||
- Simplified and modern user interface.
|
||||
- Multi architecture (ARMv7, ARMv8, amd64, etc).
|
||||
- Multi camera support: IP Cameras (MJPEG/H264), USB cameras and Raspberry Pi Cameras through a RTSP proxy.
|
||||
- Single camera per instance (e.g. One Docker container per camera).
|
||||
- Integrations (Webhooks, MQTT, Script, etc).
|
||||
- Cloud storage (Kerberos Hub, Kerberos Vault, Minio, Storj, etc).
|
||||
- MIT License
|
||||
|
||||
### Kerberos Factory (part of [Kerberos Enterprise suite](https://doc.kerberos.io/enterprise/first-things-first/))
|
||||
|
||||
- Installation on top of Kubernetes (K8S).
|
||||
- Camera support for IP camera only (RTSP/H264).
|
||||
- Massive horizontal scaling, thanks to Kubernetes.
|
||||
- Management of multiple Kerberos Agents through a single pane of glass.
|
||||
- Low memory and CPU intensive.
|
||||
- Modular and extensible design for building own extensions and integrations (e.g. a video analytics platform).
|
||||
- Commercial licensed and closed source.
|
||||
|
||||
## How it works: A world of Agents 🕵🏼♂️
|
||||
|
||||
Kerberos.io applies the concept of agents. An agent is running next to or on your camera, and is processing a single camera feed. It applies motion based recording and make those recordings available through a user friendly web interface. Kerberos Agent allows you to connect to other cloud services or custom applications. Kerberos Agent is perfect for personal usage and/or is a great tool if you only have a couple of surveillance cameras to be processed.
|
||||
|
||||
If you are looking for a solution that scales better with your video surveillance and/or video analytics requirements, [Kerberos Enterprise Suite might be a better fit](https://doc.kerberos.io/enterprise/first-things-first).
|
||||
35
deployments/balena/app/app/docker-compose.yml
Normal file
35
deployments/balena/app/app/docker-compose.yml
Normal file
@@ -0,0 +1,35 @@
|
||||
version: '2.1'
|
||||
|
||||
volumes:
|
||||
kerberosagent_recordings:
|
||||
kerberosagent_snapshots:
|
||||
kerberosagent_config:
|
||||
|
||||
services:
|
||||
|
||||
# https://github.com/kerberos/agent
|
||||
agent:
|
||||
image: kerberos/agent:756b893
|
||||
network_mode: host
|
||||
tty: true
|
||||
restart: always
|
||||
volumes:
|
||||
- 'kerberosagent_recordings:/home/agent/data/recordings:rw'
|
||||
- 'kerberosagent_snapshots:/home/agent/data/snapshots:rw'
|
||||
- 'kerberosagent_config:/home/agent/data/config:rw'
|
||||
|
||||
# https://github.com/kerberos/rtsp-simple-server
|
||||
#rtsp-simple-server:
|
||||
# build: ./rtsp-simple-server
|
||||
# network_mode: host
|
||||
# privileged: true
|
||||
# restart: always
|
||||
|
||||
# https://github.com/balenablocks/hostname
|
||||
hostname:
|
||||
image: balenablocks/hostname:latest
|
||||
restart: no
|
||||
labels:
|
||||
io.balena.features.supervisor-api: 1
|
||||
environment:
|
||||
SET_HOSTNAME: kerberos-agent
|
||||
58
deployments/balena/app/block/balena.yaml
Normal file
58
deployments/balena/app/block/balena.yaml
Normal file
@@ -0,0 +1,58 @@
|
||||
name: agent
|
||||
description: >-
|
||||
Kerberos Agent is a cutting edge video surveillance management system
|
||||
made available as Open Source under the MIT License
|
||||
version: 3.0.0
|
||||
type: sw.block
|
||||
assets:
|
||||
repository:
|
||||
type: blob.asset
|
||||
data:
|
||||
url: 'https://github.com/kerberos-io/agent'
|
||||
logo:
|
||||
type: blob.asset
|
||||
data:
|
||||
url: >-
|
||||
https://raw.githubusercontent.com/kerberos-io/balena-agent/master/logo.png
|
||||
data:
|
||||
defaultDeviceType: raspberrypi3
|
||||
supportedDeviceTypes:
|
||||
- raspberrypi4-64
|
||||
- fincm3
|
||||
- raspberrypi3
|
||||
- raspberrypi3-64
|
||||
- raspberrypi400-64
|
||||
- intel-nuc
|
||||
- genericx86-64-ext
|
||||
post-provisioning: >-
|
||||
|
||||
## Introduction
|
||||
|
||||
Kerberos.io is a cutting edge video surveillance system with a strong focus on user experience, scalability, resilience, extension and integration. Kerberos.io provides different solutions, but from a high level point of view it comes into two flavours: Kerberos Agent and Kerberos Enterprise Suite. Bottom line Kerberos Enterprise Suite extends Kerberos Agent with additional components such as Kerberos Factory, Kerberos Vault and Kerberos Hub.
|
||||
|
||||
### Kerberos Agent
|
||||
|
||||
- Installation in seconds (Docker, Balena, Snap, etc).
|
||||
- Simplified and modern user interface.
|
||||
- Multi architecture (ARMv7, ARMv8, amd64, etc).
|
||||
- Multi camera support: IP Cameras (MJPEG/H264), USB cameras and Raspberry Pi Cameras through a RTSP proxy.
|
||||
- Single camera per instance (e.g. One Docker container per camera).
|
||||
- Integrations (Webhooks, MQTT, Script, etc).
|
||||
- Cloud storage (Kerberos Hub, Kerberos Vault, Minio, Storj, etc).
|
||||
- MIT License
|
||||
|
||||
### Kerberos Factory (part of [Kerberos Enterprise suite](https://doc.kerberos.io/enterprise/first-things-first/))
|
||||
|
||||
- Installation on top of Kubernetes (K8S).
|
||||
- Camera support for IP camera only (RTSP/H264).
|
||||
- Massive horizontal scaling, thanks to Kubernetes.
|
||||
- Management of multiple Kerberos Agents through a single pane of glass.
|
||||
- Low memory and CPU intensive.
|
||||
- Modular and extensible design for building own extensions and integrations (e.g. a video analytics platform).
|
||||
- Commercial licensed and closed source.
|
||||
|
||||
## How it works: A world of Agents 🕵🏼♂️
|
||||
|
||||
Kerberos.io applies the concept of agents. An agent is running next to or on your camera, and is processing a single camera feed. It applies motion based recording and make those recordings available through a user friendly web interface. Kerberos Agent allows you to connect to other cloud services or custom applications. Kerberos Agent is perfect for personal usage and/or is a great tool if you only have a couple of surveillance cameras to be processed.
|
||||
|
||||
If you are looking for a solution that scales better with your video surveillance and/or video analytics requirements, [Kerberos Enterprise Suite might be a better fit](https://doc.kerberos.io/enterprise/first-things-first).
|
||||
35
deployments/balena/app/block/docker-compose.yml
Normal file
35
deployments/balena/app/block/docker-compose.yml
Normal file
@@ -0,0 +1,35 @@
|
||||
version: '2.1'
|
||||
|
||||
volumes:
|
||||
kerberosagent_recordings:
|
||||
kerberosagent_snapshots:
|
||||
kerberosagent_config:
|
||||
|
||||
services:
|
||||
|
||||
# https://github.com/kerberos/agent
|
||||
agent:
|
||||
image: kerberos/agent:756b893
|
||||
network_mode: host
|
||||
tty: true
|
||||
restart: always
|
||||
volumes:
|
||||
- 'kerberosagent_recordings:/home/agent/data/recordings:rw'
|
||||
- 'kerberosagent_snapshots:/home/agent/data/snapshots:rw'
|
||||
- 'kerberosagent_config:/home/agent/data/config:rw'
|
||||
|
||||
# https://github.com/kerberos/rtsp-simple-server
|
||||
#rtsp-simple-server:
|
||||
# build: ./rtsp-simple-server
|
||||
# network_mode: host
|
||||
# privileged: true
|
||||
# restart: always
|
||||
|
||||
# https://github.com/balenablocks/hostname
|
||||
hostname:
|
||||
image: balenablocks/hostname:latest
|
||||
restart: no
|
||||
labels:
|
||||
io.balena.features.supervisor-api: 1
|
||||
environment:
|
||||
SET_HOSTNAME: kerberos-agent
|
||||
Reference in New Issue
Block a user