- docs
- FlowFuse User Manuals
- Using FlowFuse
- Getting Started
- Static asset service
- Bill of Materials
- FlowFuse Concepts
- Changing the Stack
- Custom Hostnames
- Custom Node Packages
- Device Groups
- DevOps Pipelines
- Environment Variables
- FlowFuse Assistant
- FlowFuse File Nodes
- FlowFuse MQTT Nodes
- FlowFuse Project Nodes
- FlowFuse Tables
- High Availability mode
- HTTP Access Tokens
- Instance Settings
- Logging
- persistent-context
- Shared Team Library
- Snapshots
- Team Broker
- Teams
- User Settings
- FlowFuse API
- Migrating a Node-RED project to FlowFuse
- Device Agent
- Device Agent
- FlowFuse Device Agent Introduction
- Installation
- Quick Start
- Register your Remote Instance
- Running the Agent
- Deploying your Flows
- Hardware Guides
- FlowFuse Cloud
- FlowFuse Cloud
- FlowFuse Self-Hosted
- Quick Start
- Installing FlowFuse
- Overview
- Configuring FlowFuse
- DNS Setup
- Docker install
- Docker from AWS Market Place
- Docker on Digital Ocean
- Add Project Stacks on Docker
- Docker Engine on Windows
- Email configuration
- First Run Setup
- FlowFuse File Storage
- Install FlowFuse on Kubernetes
- Upgrading FlowFuse
- Administering FlowFuse
- Administering FlowFuse
- Configuring Single Sign-On (SSO)
- Licensing
- Monitoring
- Telemetry
- User Management
- Support
- Community Support
- Premium Support
- Debugging Node-RED issues
- Contributing
- Contributing to FlowFuse
- Introduction
- Adding Template Settings
- API Design
- Creating debug stack containers
- Database migrations
- FlowFuse Architecture
- Local Install
- State Flows
- Device Editor
- Invite External Users
- User Login Flows
- Reset Password Flow
- Project Creation
- Instance states
- User Sign up Flow
- Team creation Flow
- Team Broker
- Working with Feature Flags
FlowFuse Device Agent Installer
What is the FlowFuse Device Agent Installer?
The FlowFuse Device Agent Installer is a CLI tool for the FlowFuse Device Agent that automatically sets up Node.js runtime, installs the device agent package, and configures it as a system service. Additionally, it provides a simple interface for keeping the device agent up to date.
The FlowFuse Device Agent Installer is the easiest way to get the FlowFuse Device Agent up and running on your remote device.
Requirements
- Linux, macOS, or Windows
- Internet connection for downloading dependencies
- Administrator/root privileges for system service installation
Networking requirements
Please see Networking requirements.
Use the FlowFuse Device Agent Installer to install or update the FlowFuse Device Agent
One-line install
For the fastest one-line install experience, see the Quick Start guide.
Manual install
If you prefer to install the FlowFuse Device Agent manually with the Installer, you can follow these steps:
1. Download the installer script:
Linux/macOS
/bin/bash -c "$(curl -fsSL https://flowfuse.github.io/device-agent/get.sh)"
Windows
powershell -c "irm https://flowfuse.github.io/device-agent/get.ps1|iex"
2. Install the Device Agent using One Time Code
Linux/MacOS
./flowfuse-device-agent-installer --otc <one-time-code>
Windows (run elevated[1])
flowfuse-device-agent-installer.exe --otc <one-time-code>
Other installation options
Install without One Time Code
You can also install the FlowFuse Device Agent without a One Time Code by providing the device.yml
content during interactive installation. To do this, run the installer without the --otc
flag.
Linux/MacOS
./flowfuse-device-agent-installer
Windows (run elevated[1:1])
flowfuse-device-agent-installer.exe
Install in custom directory
There is a possibility to install the Device Agent in a custom directory by using the --dir
option. For example:
Linux/MacOS
./flowfuse-device-agent-installer --dir /path/to/custom/dir
Windows (run elevated[1:2])
flowfuse-device-agent-installer.exe --dir C:\path\to\custom\dir
Install on custom port
You can configure a custom port using the --port
flag. The service name includes the port, for example flowfuse-device-agent-1882
for --port 1882
.
Linux/MacOS
./flowfuse-device-agent-installer --port 1882
Windows (run elevated[1:3])
flowfuse-device-agent-installer.exe --port 1882
Updating components
Node.js runtime
To update bundled Node.js runtime, specify the --update-nodejs
flag with the desired version:
./flowfuse-device-agent-installer --update-nodejs --nodejs-version 20.19.1
Specifying --update-nodejs
without a version will pick the default version defined in the installer.
Device Agent
To update the Device Agent package, use the --update-agent
flag, optionally specifying the version:
./flowfuse-device-agent-installer --update-agent --agent-version 3.3.2
Specifying --update-agent
without the --agent-version
flag will update to the latest available version.
Troubleshooting
Managing the Device Agent service
Services are named per-port, for example flowfuse-device-agent-1880
. On macOS, the launchd label is com.flowfuse.device-agent-1880
.
Linux (systemd)
sudo systemctl start flowfuse-device-agent-<port>
sudo systemctl stop flowfuse-device-agent-<port>
sudo systemctl restart flowfuse-device-agent-<port>
Linux (SysVinit)
sudo service flowfuse-device-agent-<port> start
sudo service flowfuse-device-agent-<port> stop
sudo service flowfuse-device-agent-<port> restart
Linux (OpenRC)
sudo rc-service flowfuse-device-agent-<port> start
sudo rc-service flowfuse-device-agent-<port> stop
sudo rc-service flowfuse-device-agent-<port> restart
macOS (launchd)
sudo launchctl start com.flowfuse.device-agent-<port>
sudo launchctl stop com.flowfuse.device-agent-<port>
sudo launchctl kickstart -k system/com.flowfuse.device-agent-<port>
Windows (Service Control)
sc.exe start flowfuse-device-agent-<port>
sc.exe stop flowfuse-device-agent-<port>
Check the Device Agent service status
You can check the status of the Device Agent service to verify if it is running correctly or to diagnose any issues. The status command provides information about the current state of the service, including whether it is active, inactive, or failed.
Linux (systemd)
sudo systemctl status flowfuse-device-agent-<port>
Linux (SysVinit)
sudo service flowfuse-device-agent-<port> status
Linux (OpenRC)
sudo rc-service flowfuse-device-agent-<port> status
macOS (launchd)
sudo launchctl print system/com.flowfuse.device-agent-<port>
Windows (Service Control)
sc.exe query flowfuse-device-agent-<port>
Viewing Device Agent log files
Adjust the path if custom directory has been specified during installation.
Linux/macOS:
tail -f /opt/flowfuse-device/logs/flowfuse-device-agent.log
Linux (systemd):
journalctl -f -u 'flowfuse-device-agent-<port>'
Windows:
Get-Content -Path 'C:\opt\flowfuse-device\flowfuse-device-agent.log' -Wait
Error: Disk space check failed
[ERROR] Disk space check failed: insufficient disk space in temporary directory (/tmp): need at least 500.0 MB, available 490.4 MB
Cause:
The Disk space check failed
error indicates that the installer has detected insufficient disk space in the temporary directory. The FlowFuse Device Agent Installer requires a minimum of 500MB of free disk space in the temporary directory to ensure proper installation.
This error might also appear if there is not enough space on the disk partition where the Device Agent is being installed. Make sure that the target installation directory has at least 500MB of free space available. Adjust installation directory accordingly.
Solution:
To fix this issue, you can try to free up some disk space by deleting unnecessary files or moving them to another location. Alternatively, you can specify a different temporary directory with sufficient space by setting proper environmental variable before running the installer.
On Linux/macOS, set the TMPDIR
environment variable:
export TMPDIR=/path/to/existing/directory/with/sufficient/space
On Windows, you can set the TEMP
or TMP
environment variable:
Set TMP="C:\path\to\existing\directory\with\sufficient\space"
Retry installation after making these adjustments.
Further reading
For more detailed technical information about the FlowFuse Device Agent, like list of supported parameters or how to contribute, please refer to the documentation.
Table of Contents
- What is the FlowFuse Device Agent Installer?
- Requirements
- Use the FlowFuse Device Agent Installer to install or update the FlowFuse Device Agent
- Updating components
- Troubleshooting
- Further reading