quip-node-manager README

The project's README from github.com/QuipNetwork/quip-node-manager. As one markdown file: README.md.

Quip Node Manager

Desktop application for running and monitoring Quip network nodes. Supports Docker and native execution modes on macOS, Linux, and Windows.

Quick Install

macOS / Linux:

curl -fsSL https://gitlab.com/quip.network/quip-node-manager/-/raw/main/scripts/install.sh | sh

Windows (PowerShell):

irm https://gitlab.com/quip.network/quip-node-manager/-/raw/main/scripts/install.ps1 | iex

Manual Download

Download the latest release from the Releases page.

macOS

Download the .dmg, open it, and drag the app to /Applications.

Linux

The recommended format is AppImage (works on any distro):

chmod +x quip-node-manager-linux-x86_64.AppImage
./quip-node-manager-linux-x86_64.AppImage

A .deb package is also available for Debian/Ubuntu:

sudo dpkg -i quip-node-manager-linux-x86_64.deb

Windows

Download the .exe and run it. Windows SmartScreen may show a warning because the binary is not yet code-signed.

Click More info, then Run anyway.

Features

Development

Prerequisites

Setup

This repo vendors the compose stack via a git submodule. After cloning, fetch the submodule at the commit locked by this repo:

make fetch-submodules

(Equivalent to git submodule update --init --recursive, or clone with git clone --recurse-submodules to do this in one step.)

Commands

bun install          # Install JS dependencies
bun run dev          # Launch development build
bun run build        # Production build for current platform
cd src-tauri
cargo check          # Type-check Rust code
cargo clippy         # Lint

CLI Mode

The app also supports a terminal UI mode:

quip-node-manager --cli

The terminal UI starts and stops the stack, runs the pre-flight checklist, streams logs, and edits the node configuration. Configuration covers the storage directory, ports, run mode, update channel, CPU and GPU settings, and the D-Wave keys. The dashboard, the health panel, TLS settings, and in-app updates stay in the desktop app.

Architecture

Native mode note (macOS): the node's REST API binds to 127.0.0.1:20100. Docker Desktop's vpnkit forwards container traffic from host.docker.internal through to the host's loopback, so the REST port is not exposed to the LAN.

Overriding the bundled stack

Node Manager rewrites ~/quip-data/docker-compose.yml from its embedded copy on every Start and Apply, discarding whatever you edited there. Put changes in ~/quip-data/docker-compose.override.yml instead. Staging never touches that file, and compose merges it over the base.

services:
  quip-validator:
    environment:
      RUST_LOG: debug

Compose loads an override file automatically only when it discovers the compose file itself. Node Manager always passes -f, so it adds the override explicitly when the file exists, after the base file so the override wins.

Two things to watch:

The compose file caps the miner container at 16 GiB, which stops a runaway round from triggering a host-wide out-of-memory kill. On a dedicated miner with more RAM, raise it by setting miner_mem_limit_gb in ~/quip-data/app-settings.json:

{ "miner_mem_limit_gb": 48 }

Set it there rather than in .env, which Node Manager regenerates on every Start. There's no UI control for this yet.

Validator pruning isn't recommended. The validator runs --state-pruning=archive --blocks-pruning=archive, keeping every state trie and block body from genesis. Size the disk for that. Pruning reclaims disk, but it breaks the dashboard: the descriptor worker scans from genesis and fails with State already discarded once it reads past the pruning window. Pruning also likely reduces your point awards on the SNAG platform. Only prune if you accept losing the dashboard.

See AGENTS.md for detailed architecture documentation.

License

AGPL-3.0-or-later

Copyright (c) Postquant Labs

quip-node-manager (QuipNetwork/quip-node-manager)

Searching Database…

这是什么?Quip Node Manager 是一款桌面图形界面应用,用于运行和监控 Quip Network 上的节点。Quip Network 是一条区块链,同时支持传统 CPU 挖矿和 D-Wave 量子(QPU)挖矿。
这是桌面应用还是网页仪表盘?它是一款基于 Tauri v2 构建的原生桌面应用,前端使用原生 HTML/CSS/JS。它还会通过 iframe 嵌入一个基于网页的仪表盘,并提供终端界面模式,方便在没有显示器的服务器上使用。
我该怎么把它跑起来?在 macOS/Linux 上使用快速安装脚本,在 Windows 上使用 PowerShell 命令;也可以手动从 Releases 页面下载 macOS 的 .dmg、Linux 的 AppImage/.deb,或 Windows 的 .exe。
运行节点前需要先安装什么?需要安装带 Compose v2 的 Docker(不支持独立的 docker-compose v1)。在 Windows 上还需要 WSL;macOS 的 Native 模式还需要在主机上额外安装独立的 miner 可执行文件。
安装时有哪些需要注意的坑吗?Windows 版 .exe 目前还没有代码签名,所以 SmartScreen 会弹出警告。这时点击“更多信息”,再点击“仍要运行”即可。另外,对 validator 进行剪枝会导致内置仪表盘失效,因为它需要从创世区块开始扫描状态。
所有操作系统上的运行方式都一样吗?在 Windows 和 Linux 上,Docker 模式是默认方式,会启动完整的 Compose 服务栈。在 macOS 上,应用还可以把 miner 作为独立的原生可执行文件运行,而 validator、仪表盘、postgres 和 Caddy 仍在容器中运行,并通过 host.docker.internal 访问。
节点的 API 会暴露给我的局域网吗?在 macOS 的 Native 模式下,节点的 REST API 只绑定到 127.0.0.1:20100,Docker Desktop 的 vpnkit 只把本机流量转发给它,因此不会暴露在局域网中。
完整的节点服务栈实际运行哪些组件?它会通过 Docker Compose 一次启动 miner、validator、基于 Postgres 的仪表盘和 Caddy 入口,并且仪表盘界面会直接嵌入应用的 Dashboard 标签页中。
仪表盘的 TLS 是怎么配置的?你只需设置 DNS 域名和邮箱,应用就会配置 Caddy 的 ACME 支持,自动签发 Let's Encrypt 或 ZeroSSL 证书。TLS 是可选的,配置完成后即可自动生效。
D-Wave QPU 功能有什么用?它允许节点使用 D-Wave 量子处理器(QPU)挖矿,可以替代 CPU 挖矿,也可以与之同时进行。它提供每日预算控制,用于限制 QPU 的花费,通过 [dwave] 配置段和 D-Wave token 进行设置。
我可以不用图形界面运行吗?可以。终端界面(CLI)模式可以启动和停止服务栈、运行启动前检查清单、查看实时日志以及编辑节点配置。不过,仪表盘和应用内更新仍然只能在图形界面中使用。
Size
6.2 MB
Stars
5.5K
Updated
CommitOct 15
Age
6mo
Commits · 90 Days