Installation
This guide covers installing DataMgmt Node on your system.
Prerequisites
Before installing DataMgmt Node, ensure you have:
- Python 3.11+ (declared as
python = "^3.11"inpyproject.toml) - Poetry for dependency management
- LevelDB (RocksDB optional —
DataManagertries RocksDB first, falls back to LevelDB / Plyvel; seedatamgmtnode/services/data_manager.py:12) - Access to an EVM-compatible blockchain (Ethereum, Polygon, etc.)
Optional (for web dashboard):
- Node.js 18+ and npm (required to build the web dashboard)
Install Dependencies
Ubuntu/Debian
# Install system dependencies
sudo apt update
sudo apt install -y python3 python3-pip libleveldb-dev
# Install Poetry
curl -sSL https://install.python-poetry.org | python3 -
# Optional: Install Node.js for web dashboard
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs
macOS
# Using Homebrew
brew install python@3.12 leveldb
# Install Poetry
curl -sSL https://install.python-poetry.org | python3 -
# Optional: Install Node.js for web dashboard
brew install node
Windows
# Install Python from python.org
# Install Poetry
(Invoke-WebRequest -Uri https://install.python-poetry.org -UseBasicParsing).Content | python -
# Optional: Install Node.js for web dashboard from https://nodejs.org/
Install DataMgmt Node
From Source
# Clone the repository
git clone https://github.com/cryptuon/datamgmtnode.git
cd datamgmtnode
# Install dependencies
poetry install
# Verify installation
poetry run python -c "from datamgmtnode.services.node import Node; print('Installation successful!')"
Using Docker
The repo ships a multi-stage Dockerfile that builds the Vue website and the
Python node together, served via nginx on port 80. See
Deployment for full details.
docker build -t datamgmtnode .
docker run -p 80:80 \
-e KEY_MASTER_PASSWORD="strong-secret" \
-e BLOCKCHAIN_URL="https://mainnet.infura.io/v3/YOUR-PROJECT-ID" \
-e PRIVATE_KEY="0x..." \
datamgmtnode
Configuration
- Copy the example environment file:
- Edit
.envwith your configuration:
# Required settings
BLOCKCHAIN_URL=https://mainnet.infura.io/v3/YOUR-PROJECT-ID
PRIVATE_KEY=your_private_key_here
KEY_MASTER_PASSWORD=your-strong-master-password
# Optional settings
NODE_ID=my-node-1
P2P_PORT=8000
Security Notice
Never commit your .env file or share your private key. The KEY_MASTER_PASSWORD is used to encrypt your encryption keys at rest.
Verify Installation
Run the test suite to verify everything is working:
There are 173 tests across the suite (counted from tests/test_*.py).
Build Web Dashboard (Optional)
If you want to use the web-based dashboard, build it after installation:
This compiles the Vue 3 + Vite frontend (see web/package.json) and copies the dist/ output to datamgmtnode/dashboard/static/ (see scripts/build_dashboard.py:23). The Dashboard API will then serve it automatically on port 8082 when you start the node.
See Web Dashboard for more details.
Next Steps
- Quick Start Guide - Share your first data
- Configuration Reference - Full configuration options
- Web Dashboard - Browser-based interface
- Terminal UI - Command-line interface
- Security Best Practices - Secure your node