Skip to main content

VM on Golem Discovery Service - Central hub for provider discovery and resource matching

Project description

Golem VM Discovery Server

The Discovery Server acts as the central hub for the Golem Network, enabling requestors to find providers with matching resources.

Installation

pip install golem-vm-discovery

Running the Server

  1. Create a configuration file .env:
# Server Settings
GOLEM_DISCOVERY_HOST="0.0.0.0"
GOLEM_DISCOVERY_PORT=7465
GOLEM_DISCOVERY_DEBUG=false

# Database Settings (optional)
GOLEM_DISCOVERY_DATABASE_DIR="/path/to/database/dir"  # Default: ~/.golem/discovery
GOLEM_DISCOVERY_DATABASE_NAME="discovery.db"          # Default: discovery.db

# Rate Limiting (optional)
GOLEM_DISCOVERY_RATE_LIMIT_PER_MINUTE=100

# Advertisement Settings (optional)
GOLEM_DISCOVERY_ADVERTISEMENT_EXPIRY_MINUTES=5
GOLEM_DISCOVERY_CLEANUP_INTERVAL_SECONDS=60
  1. Run the server:
golem-discovery

The server will:

  • Create a SQLite database in ~/.golem/discovery by default
  • Listen on port 7465 by default
  • Accept provider advertisements
  • Clean up expired advertisements automatically

API Endpoints

  • GET /health - Health check endpoint
  • GET /api/v1/advertisements - List available providers
  • POST /api/v1/advertisements - Register a provider

Environment Variables

All settings can be configured through environment variables:

Variable Description Default
GOLEM_DISCOVERY_HOST Server host 0.0.0.0
GOLEM_DISCOVERY_PORT Server port 7465
GOLEM_DISCOVERY_DEBUG Enable debug mode false
GOLEM_DISCOVERY_DATABASE_DIR Database directory ~/.golem/discovery
GOLEM_DISCOVERY_DATABASE_NAME Database filename discovery.db
GOLEM_DISCOVERY_RATE_LIMIT_PER_MINUTE Rate limit per IP 100
GOLEM_DISCOVERY_ADVERTISEMENT_EXPIRY_MINUTES Advertisement TTL 5
GOLEM_DISCOVERY_CLEANUP_INTERVAL_SECONDS Cleanup interval 60

Development

To run the server in development mode:

GOLEM_DISCOVERY_DEBUG=true golem-discovery

This will enable auto-reload on code changes and more detailed logging.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

golem_vm_discovery-0.1.2.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

golem_vm_discovery-0.1.2-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file golem_vm_discovery-0.1.2.tar.gz.

File metadata

  • Download URL: golem_vm_discovery-0.1.2.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.2 Darwin/24.3.0

File hashes

Hashes for golem_vm_discovery-0.1.2.tar.gz
Algorithm Hash digest
SHA256 5061d01f2c581e122fd46a6b4c1469e7b69913afea7d0460d26b5d82e4e4dcd9
MD5 ffc96318f531087be3d355e88e3ba490
BLAKE2b-256 86799772539a63db7b163a200b493894a500b4a98c14c913f84ee7b735496ef8

See more details on using hashes here.

File details

Details for the file golem_vm_discovery-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: golem_vm_discovery-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.4 CPython/3.13.2 Darwin/24.3.0

File hashes

Hashes for golem_vm_discovery-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 90def37dd800ee3a3c8d2e2968b32a993945409213edda9a323dc9d5143fc081
MD5 af952601247b557c7f60d1d72f409b79
BLAKE2b-256 fd4eb75b4a8664a5205b996f9200a7ec5df5aa07b9d0420d64ac22e55e97f164

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page