F Forge DocsRepository ↗FeaturesUser manual

Beacon Node Guide

What Beacon does

Beacon is Forge’s node agent. It runs Docker actions, files, console, SFTP, backups, and node reporting; it is not another web panel.

Repository-validated operator guidance View source ↗

#Deployment models

ModelBeacon locationUse
All in oneThe daemon service in infra/compose.ymlA first host where control plane and workloads share a VPS.
Standalone nodeinfra/compose.beacon.yml on the workload VPSThe supported node-specific Compose path.
Several nodesOne standalone Beacon deployment per workload VPSRequired for workload movement and destination recovery.

#Network and identity

Beacon needs DAEMON_NODE_ID, DAEMON_NODE_TOKEN, and a PANEL_API_URL reachable from that node. The control plane uses the node credential for daemon calls; Beacon’s panel synchronization uses the panel API URL. The daemon health endpoint is /health. It binds its API at DAEMON_ADDR (default :9090) and SFTP is advertised at DAEMON_SFTP_ADDR (default :2022).

Treat the Docker socket as root-equivalent

Beacon mounts /var/run/docker.sock. Limit who can administer its host and do not expose its API publicly.

#When Forge is unavailable

Already-running containers continue under Docker. New control-plane actions, state updates, and centralized observations cannot complete until the API and PostgreSQL return. A node cannot perform control-plane scheduling on its own.

#Health and logs

Standalone node
cd infra
docker compose -f compose.beacon.yml --env-file .env ps
docker compose -f compose.beacon.yml --env-file .env logs -f beacon
docker compose -f compose.beacon.yml --env-file .env exec beacon /daemon --healthcheck
Made by Riyaz with love