Files
app/worker
stroblme 5e3a2f9a62
Docs / docs (push) Successful in 23s
Playwright Tests / test-playwright (1, 2) (push) Failing after 1m9s
Playwright Tests / test-playwright (2, 2) (push) Failing after 20s
Playwright Tests / merge-reports (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 41s
Test Backend / test-backend (3.12) (push) Canceled after 0s
Test Backend / test-backend (3.14) (push) Canceled after 0s
Compose Smoke Test / test-compose (push) Canceled after 0s
Publish / publish (push) Failing after 24s
Release v0.2.0
2026-11-01 13:18:37 +01:00
..
2026-11-01 13:18:37 +01:00

fluksio-worker

Runs Fluksio nodes on a machine the engine cannot reach — a GPU box, a cluster node, anything behind a NAT. It dials out to the engine over one authenticated websocket, so nothing has to be exposed here.

pip install fluksio-worker

fluksio-worker \
  --url wss://api.example.com/api/v1/workers/attach \
  --labels gpu,cuda12 \
  --python /path/to/node-venv/bin/python

Replace the address and interpreter path with your own. Create a token on the engine with POST /api/v1/workers/tokens and set FLUKSIO_WORKER_TOKEN before starting the worker. See the worker guide for the commands.

--python selects the environment holding your node dependencies. Omit it to use the worker's own interpreter. The token fixes the worker's name and labels; --labels may repeat those labels but cannot change them.

Engine and worker must use compatible protocols. Upgrade the engine first, then its workers.

A plain ws:// address is refused unless the engine is on this machine, since the token and node secrets would cross the network in clear; --insecure allows it on a network you trust.

Requires Python 3.12 or newer on Linux or macOS.

License

Copyright (C) 2026 Melvin Strobl — GNU Affero General Public License v3.0 or later. Running a modified version over a network obliges you to offer its users the corresponding source (AGPL §13).