Template block enabling you to get started building balenablocks for your projects and fleets
- Example balenablock: An example for you to start building your own balenablocks!
- Multi-arch Auto-publishing: Pre-build images for your users' custom architectures using GitHub actions
- Self-documenting: For nodejs express-based blocks, automatically generate swagger.io documentation
Use this as standalone with the button below:
Or add the following service to your docker-compose.yml
:
version: "2.1"
services:
template:
restart: always
image: ghcr.io/balena-io-playground/balenablock-template:latest
ports:
- "80:3000"
If you want to use a webserver exposing a public facing page, you will need to remove the exposed port 80
Head over to our docs for detailed installation and usage instructions, customization options and more!
BalenaBlocks are drop-in chunks of functionality built to handle the basics and speed up how developers prototype their next big project. For example, you might use a block to quickly provide a web browser to your project or maybe set up your device's WiFi credentials. Blocks are neither join-able like fleets nor fork-able like projects; they’re a resource for everyone to use when creating their own fleets, projects, proof of concepts and prototypes. This is a template repo to get you started working on your own balenaBlocks. Blocks should ideally be lightweight, simple to use and well documented docker images, pre-built for use alongside other services. From this template you should be ready to go with:
- GitHub actions for publishing multi-arch docker images for your blocks
- Simple node.js REST server as a demonstration block
- Self-documenting
balena.yml
configuration file, required for publishing on the balenaHub- landr compliant documentation
If you're having any problem, please raise an issue on GitHub and we will be happy to help.
Do you want to help make balenablock-template better? Take a look at our Contributing Guide. Hope to see you around!
balenablock-template is free software, and may be redistributed under the terms specified in the license.