Skip to main content

Running a Node

Prerequisites

Before starting the daemon, you must have:
  1. Initialized your nodeblindference-node init completed
  2. Attested with the ICLblindference-node attest --mock (or interactive flow)
Without attestation, the daemon will exit with:

Start the Daemon

The daemon starts three concurrent loops:

Daemon Lifecycle

Job Execution Flow

When an assignment is received, the worker executes:

Monitoring the Daemon

Console Output

The daemon logs to stdout with structured log lines:

Log Levels

Set log level via environment:

Stopping the Daemon

Press Ctrl+C (SIGINT) or send SIGTERM:
The daemon handles shutdown gracefully:
  1. Stops accepting new assignments
  2. Waits for running jobs to complete (or timeout)
  3. Sends final heartbeat
  4. Exits

Running Multiple Nodes

You can run multiple nodes on the same machine (for testing) by using different config directories:
Each node needs a unique wallet and should use a unique ICL operator key.

Background Operation

Using systemd (Linux)

Create /etc/systemd/system/blindference-node.service:

Using Docker

Using nohup / screen / tmux