- Documentation
- FlowFuse User Manuals
- Using FlowFuse
- Getting Started
- Static asset service
- Bill of Materials
- FlowFuse Concepts
- Instance States
- Changing the Stack
- Custom Hostnames
- Custom Node Packages
- Dashboards
- DevOps Pipelines
- Environment Variables
- FlowFuse Expert
- FlowFuse File Nodes
- FlowFuse MQTT Nodes
- FlowFuse Persistent Context
- FlowFuse Project Nodes
- FlowFuse Tables
- Groups
- High Availability mode
- HTTP Access Tokens
- Instance Settings
- Logging
- Role-Based Access Control
- Shared Team Library
- Snapshots
- Team Broker
- Teams
- User Settings
- FlowFuse API
- Migrating a Node-RED project to FlowFuse
- Device Agent
- Device Agent
- Hardware Guides
- FlowFuse Cloud
- FlowFuse Cloud
- FlowFuse Self-Hosted
- Quick Start
- Installing FlowFuse
- Upgrading FlowFuse
- Administering FlowFuse
- Support
- Community Support
- Premium Support
- Debugging Node-RED issues
- Contributing
- Contributing to FlowFuse
Installing Device Agent
Choose your install path
Recommended for most users: Use the Device Agent Installer (Quick Start), the fastest way to deploy with minimal configuration. Power users can choose Manual (using npm), Docker, or Kubernetes deployments.
Quick install
Run the one-line installer on your device. It installs Node.js, registers the device on your FlowFuse platform, and configures it to run as a local service.
Linux / macOS
/bin/bash -c "$(curl -fsSL https://flowfuse.github.io/device-agent/get.sh)" && ./flowfuse-device-agent-installer
Windows — run in an elevated PowerShell terminal:
Set-Location $env:USERPROFILE; powershell -c "irm https://flowfuse.github.io/device-agent/get.ps1 | iex"; .\flowfuse-device-agent-installer.exe
See the Quick Start guide for the full walkthrough, or the Installer reference for all options and service management.
- Recommended: Use the Device Agent Installer
- Fastest way to get started with a one-line command in the Quick Start guide
- Full options and service management in the Installer reference
- Alternative: Manual install (using
npm)- Install the npm package, set working directory, configure, and run as a service. See Manual install
- Alternative: Docker / Docker Compose
- Run the agent in a container; bind-mount the configuration. See Docker install
- Alternative: Kubernetes
- Deploy the agent in a Kubernetes cluster. See Kubernetes install
Prerequisites
- Node.js 18 or later (for Manual install and for running locally). Supported versions are 18, 20, 22, and 24. Device Agent v4 (and its installer and official Docker image) defaults to Node.js 22 — this is the recommended runtime. Note that Node.js 20 reached end-of-life in April 2026.
- Supported OS: Linux, macOS, Windows, or Docker container
- Networking: allow outbound access on 443 to:
app.flowfuse.commqtt.flowfuse.cloud
- Access to npm registry when snapshots are installed: https://registry.npmjs.com
Note: The Device Agent downloads the required Node-RED version and any nodes specified by the assigned snapshot. Ensure firewall/proxy permits access to the npm registry or see Running with no access to npmjs.org.
Networking requirements
If you're working behind a firewall, and need to configure it to allow the Device Agent to connect to FlowFuse and the npm registry, see the following:
Allow outbound TCP 443 to:
app.flowfuse.commqtt.flowfuse.cloudregistry.flowfuse.cloudregistry.flowfuse.com
Ensure access to npm registry to download Node-RED and nodes:
https://registry.npmjs.com
For offline environments, see Running with no access to npmjs.org.
Verify the installation
After installing by any method:
- Ensure a working directory exists (default is
/opt/flowfuse-deviceorc:\opt\flowfuse-device). - Run the agent and it will help you get it registered, or provide a device configuration you have already created (via Quick Connect, provisioning, or manual
device.yml). See Register your Remote Instance. - Start the agent (service or CLI) and open
http://<device-ip>:1880when assigned and running.
What’s next
- Follow the Quick Start guide to add and connect a Remote Instance
- Learn how to run and configure the agent
- Use DevOps Pipelines to deploy flows