Přeskočit na hlavní obsah

Pubsub Provider

Pubsub Provider je služba pro provozovatele, která spouští záložní pubsub relay kompatibilní s Bitsocial spolu s přibaleným uzlem Kubo. Moderní klienti Bitsocial, jako jsou 5chan a Seedit, používají v prohlížeči ve výchozím nastavení čisté peer-to-peer spojení, tato služba ale zůstává užitečná jako volitelná záložní cesta pro uživatele, kteří si P2P v prohlížeči vypnou, nebo pro provozovatele, kteří chtějí nabídnout veřejné endpointy kvůli kompatibilitě.

Co všechno běží​

  • veřejná HTTP proxy pro cesty pubsub, gateway, name-provider a delegovaného směrování
  • přibalený uzel Kubo se zapnutým pubsub
  • poskytovatel delegovaného HTTP směrování na /routing/v1/providers
  • metriky Prometheus na /metrics
  • volitelný přístup k plnému RPC API uzlu Kubo přes basic auth

Porty​

Výchozí hodnoty jsou zvolené tak, aby Pubsub Provider mohl běžet na stejném VPS vedle Bitsocial Seeder bez konfliktu na swarm portu.

ÚčelVýchozíPoznámky
Veřejná HTTP proxy8000 v aplikaci, 80 v DockeruPort hostitele změníte přes PUBSUB_PROVIDER_HTTP_PORT.
Kubo swarm4002 TCP/UDPVyhýbá se výchozímu swarm portu Kubo 4001 u seederu.
Kubo API5001 jen lokálněPoužívá interně proxy.
Kubo gateway8080 jen lokálněPoužívá interně proxy.

Nastavení přes Docker​

git clone https://github.com/bitsocialnet/pubsub-provider.git
cd pubsub-provider
docker compose pull
docker compose up -d

Kontrola logů:

docker logs --follow pubsub-provider

Test proxy:

curl http://127.0.0.1/commit-hash

Aktualizace​

Pokud jste dříve provozovali starý image latest, přinuťte Compose vytvořit kontejner znovu z připnutého publikovaného image:

git pull
docker compose down
docker compose pull
docker compose up -d --force-recreate

Ověřte, že běží opravený image:

docker inspect pubsub-provider --format 'image={{.Image}} restarts={{.RestartCount}}'
docker exec pubsub-provider /app/bin/ipfs version
curl http://127.0.0.1/commit-hash

V logu by se mělo objevit using Kubo binary at /app/bin/ipfs a nemělo by se objevit downloading ipfs.

Provoz společně s Bitsocial Seeder​

Pokud na stejném hostiteli běží i bitsocial-seeder, nechte Pubsub Provider na swarm portu 4002 nebo na jiném portu než 4001:

PUBSUB_PROVIDER_SWARM_PORT=4002 docker compose up -d

Tím se vyhnete konfliktu portů, ke kterému dojde, když se dva uzly Kubo pokusí obsadit TCP/UDP 4001.

Konfigurace​

Běžné proměnné prostředí:

PUBSUB_PROVIDER_HTTP_PORT=80
PUBSUB_PROVIDER_SWARM_PORT=4002
PUBSUB_PROVIDER_PORTS=8000
KUBO_RPC_URL=http://127.0.0.1:5001/api/v0
IPFS_GATEWAY_URL=http://127.0.0.1:8080
HTTP_ROUTER_URLS=https://example-router.invalid
PUBSUB_PROVIDER_ROUTING_STORE_PATH=
BASIC_AUTH_USERNAME=
BASIC_AUTH_PASSWORD=
IPFS_GATEWAY_USE_SUBDOMAINS=false
SHUTDOWN_KEY=
ETH_PROVIDER_URL=
ETH_PROVIDER_URL_WS=
SOL_PROVIDER_URL=

Používejte tuto službu jako záložní relay, ne jako náhradu P2P v prohlížeči. Infrastrukturu trackerů provozujte i nadále odděleně, když síť potřebuje vyhrazenou kapacitu pro zjišťování peerů.