Architecture

One manager. Multiple database nodes.

Fleetdock cleanly separates the control plane from the servers that run your databases. You operate the entire fleet from one interface while each node stays independent.

Fleetdock Manager

Control plane · UI · API · worker

Fleetdock Agentdb-node-eu-01
  • MariaDB
  • PostgreSQL
Fleetdock Agentdb-node-eu-02
  • MySQL
  • MariaDB
Fleetdock Agentdb-node-eu-03
  • PostgreSQL

Agents enroll over a single outbound HTTPS connection and execute only approved operations on their own node.

Components

Core components, clearly separated.

Fleetdock Manager

The control plane. It serves the dashboard and API, runs the operations worker, and stores all fleet metadata — users, servers, encrypted credentials, and job history — in PostgreSQL.

Fleetdock Agent

A Go service installed on each database node with one command. It enrolls with a single-use token, sends health heartbeats every 30 seconds, and polls for operations to run locally.

Database instances

Managed instances run on your nodes — provisioned as isolated Docker containers or registered from an existing database. External instances are databases you already host elsewhere.

Fleetdock Gateway

An optional HAProxy TCP proxy colocated with the Manager. It assigns one stable public port per database, enforces CIDR allowlists, and is reconciled by the control-plane worker.

How operations flow

Jobs are enqueued centrally and executed where the data lives.

Every asynchronous action is a tracked job with status, progress, and errors. Managed-instance jobs are claimed by an agent; external-instance jobs run on the Manager's worker.

Managed instances

Operations are claimed and executed by that node's agent against 127.0.0.1. The Manager never opens a shell — it enqueues a job and the agent reports progress.

External instances

The control plane connects directly to the database host and port. These jobs run on the Manager's built-in worker instead of an agent.

External access

Applications outside your private network connect through the Fleetdock Gateway — CIDR-gated TCP proxy with one port per database. Public access is disabled by default; application credentials replace root passwords.

Backups & restores

Data is streamed with each engine's native dump tool and gzip to object storage through time-limited presigned URLs. Agents move the bytes but never hold your storage credentials.

Offline detection

If a node stops heartbeating for two minutes, the Manager flips it to offline so you see capacity and availability changes without polling each host.

Stop managing databases one server at a time.

Connect your infrastructure, standardize database operations, and manage every instance from one control plane.