Files
usenet-indexer/seed-node/node.env.example
T
Daan MeijerandClaude Opus 5.5 70036847cf
Test and deploy / test (push) Successful in 1m29s
Test and deploy / deploy (push) Successful in 1m59s
Seeding nodes log in before leasing; TLS through tunnels
- seed:node logs in to NNTP before taking a range and keeps the connection
  across ranges (replaced after 2 minutes idle or a failed range). A node
  that can't reach its news server takes no range: two ranges were set
  aside as failed while an office node's tunnel was being set up
  (ECONNREFUSED 127.0.0.1:1563, five leases each). After an IP-address
  limit refusal it waits 5 minutes.
- NNTP_TLS_SERVERNAME: the hostname the TLS certificate is checked
  against when NNTP_HOST is a tunnel ("Hostname/IP does not match
  certificate's altnames: Host: localhost").
- seed-node/README: the IP-address limit and tunnelling.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 14:14:15 +02:00

33 lines
1.0 KiB
Bash

# --- Seed API: the orchestrator, and this node's token (`node ace seed:token <name>` on the indexer).
SEED_URL=https://seed.exp.sforum.nl
SEED_TOKEN=sn_replace_me
# Ranges worked on at once; each uses one NNTP connection of the account below.
SEED_CONNECTIONS=2
# --- NNTP account this node fetches headers with (mind its connection limit across all nodes).
NNTP_HOST=news.example.com
NNTP_PORT=563
NNTP_SECURE=true
NNTP_USER=replace_me
NNTP_PASSWORD=replace_me
# Only when NNTP_HOST is a tunnel or proxy (e.g. localhost:1563 forwarded to news.eweka.nl:563):
# the hostname the server's TLS certificate is for.
# NNTP_TLS_SERVERNAME=news.eweka.nl
# --- Required by the app's configuration, but unused on a seeding node (no database, Redis or web server).
NODE_ENV=production
TZ=UTC
PORT=3333
HOST=0.0.0.0
LOG_LEVEL=info
APP_KEY=unused-on-seed-nodes-unused-on-seed-nodes
APP_URL=http://localhost:3333
SESSION_DRIVER=memory
DB_CONNECTION=pg
DB_HOST=localhost
DB_PORT=5432
DB_USER=unused
DB_DATABASE=unused
REDIS_HOST=localhost
REDIS_PORT=6379