Hizmetler
Bir Private Channels örneği çalıştırmak, aşağıdaki Docker Compose hizmetlerine sahip olmak anlamına gelir:
| Konteyner | Rol |
|---|---|
private-channel-postgres-primary | Yazma düğümü durum veritabanı (PostgreSQL 16) |
private-channel-postgres-replica | Okuma düğümü durum veritabanı (akış replikası) |
private-channel-postgres-indexer | İndeksleyici ve operatör veritabanı |
private-channel-write-node | İşlemleri alır ve yürütür (port 8900, yalnızca geri döngü) |
private-channel-read-node | RPC okuma sorgularını işler (port 8901, yalnızca geri döngü) |
private-channel-gateway | İstekleri yazma ve okuma düğümleri arasında yönlendirir; RBAC uygular (port 8899) |
private-channel-indexer-solana | Yellowstone gRPC aracılığıyla Solana'daki Deposit olaylarını izler |
private-channel-indexer-private-channel | RPC polling ile kanalda Burn olaylarını izler |
private-channel-operator-solana | Yatırımlar onaylandığında kanal token'ları basar |
private-channel-operator-private-channel | Çekimler onaylandığında Mainnet üzerinde ReleaseFunds çağırır |
private-channel-auth | İsteğe bağlı JWT/RBAC hizmeti (Docker profili: auth) |
Gözlemlenebilirlik konteynerleri (prometheus, grafana, cadvisor) da
dahildir.
Gateway
Bunların devnet Docker Compose kurulumu için mantıklı varsayılanları vardır. Yalnızca gateway'i Docker dışında çalıştırırken veya üretime dağıtırken geçersiz kılın.
| Ortam Değişkeni | Varsayılan | Zorunlu | Açıklama |
|---|---|---|---|
GATEWAY_PORT | 8899 (devnet) | Hayır | Dinleme portu |
GATEWAY_WRITE_URL | http://write-node:8900 (devnet env dosyası değeri; ikili varsayılan yok) | Evet | Yazma düğümü URL'si - sendTransaction buraya yönlendirilir |
GATEWAY_READ_URL | http://read-node:8901 (devnet env dosyası değeri; ikili varsayılan yok) | Evet | Okuma düğümü URL'si - diğer tüm RPC yöntemleri buraya yönlendirilir |
GATEWAY_CORS_ALLOWED_ORIGIN | * | Hayır | Access-Control-Allow-Origin başlık değeri |
JWT_SECRET | - | Hayır | RBAC'yi etkinleştirir; auth hizmetinin JWT_SECRET değeriyle eşleşmelidir |
AUTH_DATABASE_URL | - | JWT_SECRET ayarlandıysa | Cüzdan sahipliği kontrolleri için Auth veritabanı |
AUTH_DATABASE_MAX_CONNECTIONS | 10 | Hayır | Auth veritabanı bağlantı havuzu boyutu |
METRICS_PORT | 9101 | Hayır | Prometheus metrikleri portu |
RUST_LOG | info | Hayır | Log seviyesi |
GATEWAY_WRITE_URLveGATEWAY_READ_URL, Docker içinde çalışırken Docker Compose hizmet ana makine adlarını (write-node,read-node) kullanır.localhosteşdeğerlerini yalnızca gateway ikili dosyasını Docker dışında doğrudan çalıştırırken kullanın.Gateway ikili dosyasının kendi yerleşik varsayılanı
GATEWAY_PORTiçin8898'dir..env.exampleve.env.devnether ikisi de bunu8899olarak ayarlar; Docker Compose kurulumunun gerçekte kullandığı değer budur (versions.envyalnızca araç zinciri ve görüntü sürümü sabitlerini tutar, hizmet portlarını değil).8898varsayılanı yalnızca ikili dosyayı hiçbir env dosyası olmadan doğrudan çalıştırdığınızda geçerlidir.
GATEWAY_CORS_ALLOWED_ORIGIN varsayılan olarak * şeklindedir; bu, herhangi bir kaynağın
gateway'i bir tarayıcıdan çağırmasına izin verir. Herhangi bir üretim dağıtımından önce
bunu uygulamanızın gerçek kaynağıyla kısıtlayın.
Yazma Düğümü ve Okuma Düğümü
Tam yazma düğümü ve okuma düğümü yapılandırma referansı,
docs/CONFIG.md
depoda bulunmaktadır.
Auth Hizmeti
| Ortam Değişkeni | Zorunlu | Açıklama |
|---|---|---|
JWT_SECRET | Evet | HS256 imzalama sırrı; gateway'in JWT_SECRET değeriyle eşleşmelidir |
AUTH_PORT | Hayır (varsayılan 8903) | Dinleme portu |
AUTH_DATABASE_URL | Evet | Auth veritabanı için PostgreSQL bağlantı dizesi |
CORS_ALLOWED_ORIGIN | Hayır (varsayılan *) | Bu hizmet için Access-Control-Allow-Origin başlık değeri (gateway'in kendi GATEWAY_CORS_ALLOWED_ORIGIN değerinden bağımsız) |
AUTH_DATABASE_MAX_CONNECTIONS | Hayır (varsayılan 10) | Auth veritabanı bağlantı havuzu boyutu |
Hizmet Port Referansı
| Hizmet | Ana Makine Portu | Bağlama |
|---|---|---|
| Gateway | 8899 | Tüm arayüzler |
| Yazma düğümü | 8900 | Yalnızca geri döngü |
| Okuma düğümü | 8901 | Yalnızca geri döngü |
| Streamer | 8902 | Yalnızca dahili (expose, ana makineye yayınlanmaz); devnet yığınının parçası değil |
| Auth hizmeti | 8903 | Tüm arayüzler |
| Operatör metrikleri | 9102, 9103 | Tüm arayüzler |
| Grafana | 37429 | Tüm arayüzler |
| Prometheus | 9090 | Tüm arayüzler |
| cAdvisor | 8080 | Tüm arayüzler |
Güvenlik notu: Yazma düğümü ve okuma düğümü portları yalnızca geri döngüye (
127.0.0.1) bağlıdır. Gateway, Auth hizmeti, operatör metrikleri, Grafana, Prometheus ve cAdvisor'ın tümü devnet Docker Compose kurulumunda her ağ arayüzüne yayınlanır. Yerel geliştirme ötesindeki her şey için bunları ana makine veya ağ düzeyinde güvenlik duvarıyla koruyun; RBAC yalnızca gateway'in kendi JSON-RPC yöntemlerini kapsar, bu diğer hizmetleri değil. Streamer istisnadır: Docker'ın hiçbir zaman ana makineye yayınlamadığı, kimlik doğrulamasız bir dahili beslemedir.
Ağ Gereksinimleri
Güvenlik duvarı kuralları ve bant genişliği gereksinimleri için depodaki
docs/TECHNICAL_REQUIREMENTS.md
dosyasına bakın.
Is this page helpful?