LinuxCommandLibrary

balena

Manage balenaCloud application deployments

TLDR

Log in to the balenaCloud account

$ balena login
copy

Create a balenaCloud or openBalena application
$ balena app create [app_name]
copy

List all balenaCloud or openBalena applications within the account
$ balena apps
copy

List all devices associated with the balenaCloud or openBalena account
$ balena devices
copy

Flash a balenaOS image to a local drive
$ balena local flash [path/to/balenaos.img] --drive [drive_location]
copy

SYNOPSIS

balena <command> [<options>]

PARAMETERS

--help
    Show help for command

--version
    Display CLI version

--verbose, -v
    Increase output verbosity (repeatable)

--debug
    Enable debug logging

--json
    Output in JSON format

--api-host <host>
    Set custom API host (default: balena-cloud.com)

--token <token>
    Provide authentication token

--curl
    Print equivalent curl command

--nocache
    Bypass build cache

--nogithub
    Disable GitHub update checks

DESCRIPTION

Balena CLI is the official command-line interface for the Balena IoT platform, enabling developers to manage devices, deploy applications, and automate workflows for edge computing projects.

It supports creating and organizing applications (fleets of devices), building containerized apps with Docker, pushing releases over-the-air (balena push), monitoring live device status, retrieving logs, and remote SSH access. Bulk operations like moving devices between fleets or generating tunnel connections are streamlined.

Ideal for CI/CD integration, Balena CLI handles authentication via tokens, API interactions with BalenaCloud (or self-hosted), and local development with balena dev. Verbose logging and JSON output aid debugging. Requires Node.js; install globally with npm i -g balena-cli, then balena login.

Used by thousands for Raspberry Pi, Jetson, and other SBCs running BalenaOS, it abstracts complex IoT ops into intuitive commands.

CAVEATS

Requires Node.js/npm; most commands need balena login. Not available in standard distro repos. Rate-limited on free BalenaCloud plans.
Deprecated options like --api-key may warn.

INSTALLATION

npm install -g balena-cli; update with npm update -g balena-cli.

KEY SUBCOMMANDS

login/logout, push/deploy, logs/ssh, apps/devices, key for fleet ops.

CONFIGURATION

Persistent settings via balena config; supports multiple profiles.

HISTORY

Developed by Balena.io (formerly Resin.io); CLI launched ~2015 as resin, rebranded to balena in 2019. Actively maintained with frequent updates for new OS features and cloud APIs.

SEE ALSO

docker(1), ssh(1), npm(1), git(1)

Copied to clipboard