Adding a node
A node is any server Flow deploys bots and sites onto. The moment you install Flow, the server it's running on already counts as one, an agent container starts alongside the control plane and registers itself automatically, so there's genuinely nothing to do there. This page is about the case beyond that: you've outgrown one box, or you want to put a particular client's services on their own server, and you need to add another one.
What the server needs
Just Docker, reachable over SSH. You don't need to preinstall the agent, or anything else beyond that, Flow handles the rest. The SSH user needs root access, or passwordless sudo, for that first connection, since installing Docker (if it isn't already there) and the agent both need it.
Adding another one
From /nodes/new, give Flow:
- A name, for your own reference in the dashboard.
- The host, a hostname or IP address.
- The SSH port,
22by default. - The SSH user,
rootby default. - Authentication, either a password or a private key, whichever you normally use to reach that server.
Submit that and Flow immediately takes you to a live status page and gets to work in the background: it connects over SSH, installs Docker if it isn't already there, installs the agent, and starts it. You'll watch it move through connecting, then installing the agent, then ready, refreshing on its own every couple of seconds so you don't need to sit there hitting reload. If something goes wrong, you'll see exactly what the setup output said and a Retry button, no need to start over from the node list.
Once it's ready, that's it. There's nothing left to configure on the server itself, and nothing more to install there by hand, ever, even as Flow itself gets upgraded later.
The node list
/nodes shows every node you've added: online or offline (a node is considered offline once it's gone a while without checking in), agent and Docker versions, memory, disk, and load at a glance, and which services are currently deployed there. If a node is still mid-setup, you'll see a banner linking back to its bootstrap page instead of live stats.
Admins have a few more controls per node:
- Stop all services and Start all services: a fast way to pause or resume everything on that node at once, without stopping each service individually.
- Regenerate token: rotates the secret the agent uses to authenticate with the control plane. Use this if you think it's been exposed. It takes effect immediately, which means the currently running agent gets disconnected until you update it with the new token and restart it, the dashboard shows you exactly what command to run on the server when you do this.
- Delete node: removes it from Flow entirely. This is blocked while any service is still deployed there, on purpose, move or delete those first so you don't lose track of something that's still technically running somewhere.
What happens next
Once a node exists, it shows up as an option any time you create a service, see Projects and services. Routing and TLS for whatever you deploy there are configured automatically as you attach domains, see Architecture for how that fits together with everything else Flow does for you.