robinnet:install
Differences
This shows you the differences between two versions of the page.
| Next revision | Previous revision | ||
| robinnet:install [2026/03/11 15:22] – created freedomotter | robinnet:install [2026/03/11 15:48] (current) – freedomotter | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Installing RobinNet ====== | ====== Installing RobinNet ====== | ||
| - | RobinNet is a Python application designed to run on Linux systems. | + | RobinNet is a lightweight |
| + | |||
| + | It is intentionally simple to deploy and can run on: | ||
| + | |||
| + | * Raspberry Pi | ||
| + | * home servers | ||
| + | * cloud VPS | ||
| + | * emergency field nodes | ||
| + | * laptops | ||
| ----- | ----- | ||
| Line 7: | Line 15: | ||
| ===== Requirements ===== | ===== Requirements ===== | ||
| - | Python 3.10+ | + | Python 3.10 or newer. |
| - | Required packages: | + | Required |
| * fastapi | * fastapi | ||
| Line 25: | Line 33: | ||
| ===== Project Layout ===== | ===== Project Layout ===== | ||
| - | Example layout: | + | Example |
| < | < | ||
| robinnet/ | robinnet/ | ||
| ├── robinnet/ | ├── robinnet/ | ||
| + | │ | ||
| + | │ | ||
| + | │ | ||
| │ | │ | ||
| - | │ | ||
| - | │ | ||
| - | │ | ||
| - | │ | ||
| │ | │ | ||
| - | │ | + | │ |
| + | │ | ||
| + | │ | ||
| └── data/ | └── data/ | ||
| </ | </ | ||
| + | |||
| + | The database files will be created inside the **data** directory. | ||
| ----- | ----- | ||
| Line 44: | Line 55: | ||
| ===== Initialize a Node ===== | ===== Initialize a Node ===== | ||
| - | Create | + | Before running |
| + | |||
| + | Example: | ||
| <code bash> | <code bash> | ||
| Line 54: | Line 67: | ||
| </ | </ | ||
| - | ----- | + | Optional fields: |
| - | + | ||
| - | ===== Start API Server ===== | + | |
| <code bash> | <code bash> | ||
| - | ROBINNET_DB=./ | + | python -m robinnet.cli \ |
| - | python | + | --db ./ |
| + | init-node \ | ||
| + | --name alpha \ | ||
| + | --operator " | ||
| + | --callsign N2XYZ \ | ||
| + | --location " | ||
| </ | </ | ||
| - | Server will start on: | + | This creates: |
| - | ====== Installing RobinNet ====== | + | * node UUID |
| - | + | * node name | |
| - | RobinNet is a Python application designed to run on Linux systems. | + | * operator information |
| + | * transport profile | ||
| ----- | ----- | ||
| - | ===== Requirements | + | ===== Starting the API Server |
| - | Python 3.10+ | + | Run the RobinNet node: |
| - | + | ||
| - | Required packages: | + | |
| - | + | ||
| - | * fastapi | + | |
| - | * uvicorn | + | |
| - | * requests | + | |
| - | + | ||
| - | Install dependencies: | + | |
| <code bash> | <code bash> | ||
| - | pip install fastapi uvicorn requests | + | ROBINNET_DB=./ |
| + | python -m robinnet.main | ||
| </ | </ | ||
| - | ----- | + | The API server will start on: |
| - | + | ||
| - | ===== Project Layout ===== | + | |
| - | + | ||
| - | Example layout: | + | |
| < | < | ||
| - | robinnet/ | + | http://localhost: |
| - | ├── robinnet/ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | └── data/ | + | |
| </ | </ | ||
| - | ----- | ||
| - | ===== Initialize a Node ===== | + | You can verify it using: |
| - | + | ||
| - | Create a database and node identity: | + | |
| <code bash> | <code bash> | ||
| - | python -m robinnet.cli \ | + | curl http://localhost: |
| - | --db ./data/node.db \ | + | |
| - | init-node \ | + | |
| - | --name alpha \ | + | |
| - | --operator " | + | |
| </ | </ | ||
| ----- | ----- | ||
| - | ===== Start API Server | + | ===== Running the Background Worker |
| - | <code bash> | + | The daemon performs: |
| - | ROBINNET_DB=./ | + | |
| - | python -m robinnet.main | + | |
| - | </ | + | |
| - | Server will start on: | + | * periodic peer sync |
| - | ====== Installing RobinNet ====== | + | * message expiration |
| + | * maintenance tasks | ||
| - | RobinNet is a Python application designed to run on Linux systems. | + | Start the daemon: |
| - | + | ||
| - | ----- | + | |
| - | + | ||
| - | ===== Requirements ===== | + | |
| - | + | ||
| - | Python 3.10+ | + | |
| - | + | ||
| - | Required packages: | + | |
| - | + | ||
| - | * fastapi | + | |
| - | * uvicorn | + | |
| - | * requests | + | |
| - | + | ||
| - | Install dependencies: | + | |
| <code bash> | <code bash> | ||
| - | pip install fastapi uvicorn requests | + | ROBINNET_DB=./ |
| + | python -m robinnet.daemon | ||
| </ | </ | ||
| - | ----- | + | In production deployments, |
| - | ===== Project Layout ===== | + | * systemd |
| + | * tmux | ||
| + | * screen | ||
| + | * docker container | ||
| - | Example layout: | + | ----- |
| - | < | + | ===== Running Multiple Nodes ===== |
| - | robinnet/ | + | |
| - | ├── robinnet/ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | │ | + | |
| - | └── data/ | + | |
| - | </ | + | |
| - | ----- | + | You can run multiple RobinNet nodes on the same machine for testing. |
| - | ===== Initialize a Node ===== | + | Example: |
| - | Create a database and node identity: | + | Node A: |
| <code bash> | <code bash> | ||
| - | python -m robinnet.cli \ | + | ROBINNET_DB=./data/alpha.db \ |
| - | --db ./data/node.db \ | + | ROBINNET_PORT=8081 |
| - | | + | python |
| - | --name alpha \ | + | |
| - | --operator " | + | |
| </ | </ | ||
| - | ----- | + | Node B: |
| - | + | ||
| - | ===== Start API Server ===== | + | |
| <code bash> | <code bash> | ||
| - | ROBINNET_DB=./ | + | ROBINNET_DB=./ |
| + | ROBINNET_PORT=8082 | ||
| python -m robinnet.main | python -m robinnet.main | ||
| </ | </ | ||
| - | Server will start on: | + | Each node uses its own database. |
| - | [[http:// | + | |
| ----- | ----- | ||
| - | ===== Start Background Worker | + | ===== Next Step ===== |
| - | Optional daemon: | + | Once a node is installed, see: |
| - | <code bash> | + | [[robinnet:testing]] |
| - | ROBINNET_DB=./ | + | |
| - | python -m robinnet.daemon | + | |
| - | </ | + | |
| - | + | ||
| - | The daemon performs: | + | |
| - | + | ||
| - | * periodic sync | + | |
| - | * message expiration | + | |
| - | * maintenance tasks | + | |
robinnet/install.1773242566.txt.gz · Last modified: by freedomotter
