Self-hosting
Self-hosting
Run the RocketRide engine on your own machine when you want full control over where data and model calls go. It is the same engine that powers Cloud; only the operator changes.
Fastest path: the VS Code extension manages a local runtime for you while you build, with no manual setup. Use the steps below when you want to run the engine as a standalone service.
Get the engine
Download a release build, no build toolchain required.
-
Open the releases page and choose the latest RocketRide Server release (tags look like
server-v3.2.2; ignore the client and extension releases). -
Download the archive for your platform:
Platform Asset Linux (x64) rocketride-server-<version>-linux-x64.tar.gzmacOS (Apple Silicon) rocketride-server-<version>-darwin-arm64.tar.gzWindows (x64) rocketride-server-<version>-win64.zip -
Extract it. The folder is your runtime directory: it contains the
enginebinary and itsai/runtime.
mkdir rocketride-engine && tar -xzf rocketride-server-<version>-linux-x64.tar.gz -C rocketride-engine
cd rocketride-engine
Building from source instead? That path is for contributors and is documented in the repository's development guide (
docs/development/index.md), which also covers the Docker Compose stack that bundles the engine with its data stores. The steps below apply to the runtime directory either way.
Set up and start listening
The extracted archive is your runtime directory.
On Linux, install the runtime dependencies (libc++1, libc++abi1, libgomp1)
before starting:
# Debian / Ubuntu
sudo apt install libc++1 libc++abi1 libgomp1
# Fedora / RHEL
sudo dnf install libcxx libcxxabi libgomp
# Alpine
sudo apk add libc++ libgomp
From inside the runtime directory, start the engine. This binds to 127.0.0.1
(localhost only) by default:
# Linux / macOS
./engine ./ai/eaas.py --host=127.0.0.1
# Windows
engine.exe ./ai/eaas.py --host=127.0.0.1
The engine now listens for the WebSocket protocol on port
5565. Only pass --host=0.0.0.0 (all interfaces) once the engine sits behind
TLS and authentication — see Connect a client below.
Verify it is running
The engine serves a public version endpoint on port 5565:
curl http://localhost:5565/version
Connect a client
Point any SDK or the CLI at the engine. A local engine typically needs no auth token:
ROCKETRIDE_URI=ws://localhost:5565
import { RocketRideClient } from 'rocketride';
const client = new RocketRideClient({ uri: 'ws://localhost:5565' });
await client.connect();
Expose the engine beyond localhost and you should put it behind TLS and
authentication (set ROCKETRIDE_APIKEY). For a clustered deployment, see the Helm
chart under deploy/helm/rocketride/.
Provider credentials
Pipelines that call external models or stores need those providers' API keys.
Supply them as environment variables in the engine's environment (never committed);
a node's config references the variable rather than the literal secret. See
Nodes for each provider's required keys.
Related
- Cloud: the managed alternative.
- WebSocket protocol: what clients speak to the engine.
- Runtime & engine: what the engine does with a pipeline.