balena-cli/INSTALL-WINDOWS.md
Marios Balamatsias ac96616e4e osConfigure/localFlash: Add support for Node.js v14
* Replace old resin-image-fs with newer balena-image-fs
* package.json: Remove resin-image-fs package
* package: Install dependencies that work with node14
* Remove resin-image-fs typings
* Fix etcher-sdk related types
* local/flash: Add unmountOnSuccess, write, direct properties on flash
	Taken from https://github.com/balena-io-modules/etcher-sdk/blob/master/examples/multi-destination.ts
* tests/utils/eol-conversion: Remove ext2fs sample binary
	Specifically ext2fs/build/Release/bindings.node
	I removed it because the file doesn't exist
* tests/test-data/pkg: Add new expected warnings darwin/linux/windows
* os/configure: Remove windows check
* local/flash: Check if environment is WSL and show warning message
* Get tests to pass with certain Node v14 warning messages
* INSTALL-WINDOWS: Remove os configure warning

Improve push and logs support for Node.js v14 (bump 'net-keepalive')

Resolves: #2200
Resolves: #1990
Change-type: minor
Signed-off-by: Marios Balamatsias <mbalamatsias@gmail.com>
2021-03-31 01:15:47 +03:00

4.4 KiB

balena CLI Installation Instructions for Windows

These instructions are for the recommended installation option. Advanced users may also be interested in advanced installation options.

Selected operating system: Windows

  1. Download the installer from the latest release page. Look for a file name that ends with "-installer.exe":
    balena-cli-vX.Y.Z-windows-x64-installer.exe

  2. Double click the downloaded file to run the installer. After the installation completes, close and re-open any open command terminal windows (so that the changes made by the installer to the PATH environment variable can take effect).

  3. Check that the installation was successful by running the following commands on a command terminal:

    • balena version - should print the CLI's version
    • balena help - should print a list of available commands

No further steps are required to run most CLI commands. The balena ssh, scan, build, deploy, preload and os configure commands may require additional software to be installed, as described below.

Additional Dependencies

build and deploy

These commands require Docker or balenaEngine to be available (on a local or remote machine). Most users will follow Docker's installation instructions to install Docker on the same workstation (laptop) as the balena CLI. The advanced installation options document describes other possibilities.

balena ssh

The balena ssh command requires the ssh command-line tool to be available. Microsoft started distributing an SSH client with Windows 10, which is automatically installed through Windows Update. To check whether it is installed, run ssh on a Windows Command Prompt or PowerShell. It can also be manually installed if needed. For older versions of Windows, there are several ssh/OpenSSH clients provided by 3rd parties.

The balena ssh command also requires an SSH key to be added to your balena account: see SSH Access documentation. The balena key* command set can also be used to list and manage SSH keys: see balena help -v.

balena scan

The balena scan command requires a multicast DNS (mDNS) service like Apple's Bonjour. Many Windows machines will already have this service installed, as it is bundled in popular applications such as Skype (Wikipedia lists several others). Otherwise, Bonjour for Windows can be downloaded and installed from: https://support.apple.com/kb/DL999

balena preload

Like the build and deploy commands, the preload command requires Docker, with the additional restriction that Docker must be installed on the local machine (because Docker's bind mounting feature is used). Also, preloading balenaOS images for some older device types (like the Raspberry Pi 3, but not the Raspberry 4) requires Docker to support the AUFS storage driver. Unfortunately, Docker Desktop for Windows or macOS dropped support for the AUFS filesystem in Docker CE versions greater than 18.06.1. The present workarounds are to either:

  • Install the balena CLI on Linux (e.g. Ubuntu) with a virtual machine like VirtualBox. This works because Docker for Linux still supports AUFS. Hint: if using a virtual machine, copy the image file over, rather than accessing it through "file sharing", to avoid errors.
  • Downgrade Docker Desktop to version 18.06.1. Link: Docker CE for Windows

The balena CLI Docker images also support the balena preload command, but they do not avoid the requirement of using a Linux physical or virtual machine. This is because the AUFS storage driver is not present in the Linux kernel used by the newer versions of Docker Desktop for Windows or macOS.

We are working on replacing AUFS with overlay2 in balenaOS images of the affected device types.