Dịch vụ
Chạy một phiên bản Private Channels nghĩa là bạn sở hữu các dịch vụ Docker Compose sau đây:
| Container | Vai trò |
|---|---|
private-channel-postgres-primary | Cơ sở dữ liệu trạng thái node ghi (PostgreSQL 16) |
private-channel-postgres-replica | Cơ sở dữ liệu trạng thái node đọc (bản sao streaming) |
private-channel-postgres-indexer | Cơ sở dữ liệu cho indexer và operator |
private-channel-write-node | Nhận và thực thi các giao dịch (cổng 8900, chỉ loopback) |
private-channel-read-node | Xử lý các truy vấn đọc RPC (cổng 8901, chỉ loopback) |
private-channel-gateway | Định tuyến yêu cầu giữa các node ghi và đọc; thực thi RBAC (cổng 8899) |
private-channel-indexer-solana | Theo dõi Solana để phát hiện sự kiện Deposit qua Yellowstone gRPC |
private-channel-indexer-private-channel | Theo dõi kênh để phát hiện sự kiện Burn qua RPC polling |
private-channel-operator-solana | Đúc token kênh khi các khoản nạp tiền được xác nhận |
private-channel-operator-private-channel | Gọi ReleaseFunds trên Mainnet khi các lệnh rút tiền được xác nhận |
private-channel-auth | Dịch vụ JWT/RBAC tùy chọn (Docker profile: auth) |
Các container quan sát (prometheus, grafana, cadvisor) cũng
được bao gồm.
Gateway
Các thiết lập này có giá trị mặc định hợp lý cho cấu hình Docker Compose devnet. Chỉ ghi đè nếu chạy gateway bên ngoài Docker hoặc triển khai lên môi trường production.
| Biến môi trường | Mặc định | Bắt buộc | Mô tả |
|---|---|---|---|
GATEWAY_PORT | 8899 (devnet) | Không | Cổng lắng nghe |
GATEWAY_WRITE_URL | http://write-node:8900 (giá trị file env devnet; không có giá trị mặc định nhị phân) | Có | URL node ghi - sendTransaction được định tuyến đến đây |
GATEWAY_READ_URL | http://read-node:8901 (giá trị file env devnet; không có giá trị mặc định nhị phân) | Có | URL node đọc - tất cả các phương thức RPC khác được định tuyến đến đây |
GATEWAY_CORS_ALLOWED_ORIGIN | * | Không | Giá trị header Access-Control-Allow-Origin |
JWT_SECRET | - | Không | Bật RBAC; phải khớp với JWT_SECRET của dịch vụ auth |
AUTH_DATABASE_URL | - | Nếu JWT_SECRET được đặt | Cơ sở dữ liệu auth để kiểm tra quyền sở hữu ví |
AUTH_DATABASE_MAX_CONNECTIONS | 10 | Không | Kích thước connection pool của cơ sở dữ liệu auth |
METRICS_PORT | 9101 | Không | Cổng metrics Prometheus |
RUST_LOG | info | Không | Cấp độ log |
GATEWAY_WRITE_URLvàGATEWAY_READ_URLsử dụng tên hostname của dịch vụ Docker Compose (write-node,read-node) khi chạy trong Docker. Chỉ sử dụnglocalhosttương đương khi chạy binary gateway trực tiếp bên ngoài Docker.Giá trị mặc định tích hợp sẵn của binary gateway cho
GATEWAY_PORTlà8898..env.examplevà.env.devnetđều đặt thành8899, đây là giá trị mà cấu hình Docker Compose thực sự sử dụng (versions.envchỉ chứa các phiên bản toolchain và image, không chứa cổng dịch vụ). Giá trị mặc định8898chỉ áp dụng nếu bạn chạy binary trực tiếp mà không có file env.
GATEWAY_CORS_ALLOWED_ORIGIN mặc định là *, cho phép bất kỳ origin nào gọi
gateway từ trình duyệt. Hãy giới hạn giá trị này về origin thực tế của ứng dụng
trước khi triển khai lên môi trường production.
Node Ghi và Node Đọc
Tài liệu tham khảo đầy đủ về cấu hình node ghi và node đọc có trong
docs/CONFIG.md
trong repository.
Dịch vụ Auth
| Biến môi trường | Bắt buộc | Mô tả |
|---|---|---|
JWT_SECRET | Có | Khóa ký HS256; phải khớp với JWT_SECRET của gateway |
AUTH_PORT | Không (mặc định 8903) | Cổng lắng nghe |
AUTH_DATABASE_URL | Có | Chuỗi kết nối PostgreSQL cho cơ sở dữ liệu auth |
CORS_ALLOWED_ORIGIN | Không (mặc định *) | Giá trị header Access-Control-Allow-Origin cho dịch vụ này (độc lập với GATEWAY_CORS_ALLOWED_ORIGIN của gateway) |
AUTH_DATABASE_MAX_CONNECTIONS | Không (mặc định 10) | Kích thước connection pool của cơ sở dữ liệu auth |
Tài liệu tham khảo cổng dịch vụ
| Dịch vụ | Cổng host | Binding |
|---|---|---|
| Gateway | 8899 | Tất cả giao diện mạng |
| Node ghi | 8900 | Chỉ loopback |
| Node đọc | 8901 | Chỉ loopback |
| Streamer | 8902 | Chỉ nội bộ (expose, không được publish ra host); không thuộc devnet stack |
| Dịch vụ Auth | 8903 | Tất cả giao diện mạng |
| Metrics operator | 9102, 9103 | Tất cả giao diện mạng |
| Grafana | 37429 | Tất cả giao diện mạng |
| Prometheus | 9090 | Tất cả giao diện mạng |
| cAdvisor | 8080 | Tất cả giao diện mạng |
Lưu ý bảo mật: Các cổng của node ghi và node đọc được gắn với loopback (
127.0.0.1) mà thôi. Gateway, dịch vụ Auth, metrics operator, Grafana, Prometheus và cAdvisor đều được publish ra tất cả giao diện mạng trong cấu hình Docker Compose devnet. Hãy thiết lập tường lửa ở cấp host hoặc mạng cho bất kỳ môi trường nào ngoài phát triển cục bộ; RBAC chỉ bảo vệ các phương thức JSON-RPC của chính gateway, không áp dụng cho các dịch vụ khác. Streamer là ngoại lệ: đây là một luồng nội bộ không xác thực mà Docker không bao giờ publish ra host.
Yêu cầu mạng
Xem
docs/TECHNICAL_REQUIREMENTS.md
trong repository để biết các quy tắc tường lửa và yêu cầu băng thông.
Is this page helpful?