مثل PasarGuard-Node، این ریپو سورس Marzban-node را کپی نمیکند؛ Dockerfile
در لحظهی build از
Gozargah/Marzban-node کلون
میکند و سپس دو پچ کوچک (دقیقاً به سبک پچهای PasarGuard) رویش میزند تا با
Railway سازگار شود:
- پورت گوشدادن را از
$PORT(متغیری که Railway خودش تزریق میکند) میخواند. - یک حالت REST بدون TLS اضافه میکند (
SERVICE_TLS=false، پیشفرض) چون Railway خودش روی لبهی شبکه TLS را ترمینیت میکند و نود از طریق شبکهی خصوصی در دسترس پنل است؛ گواهی کلاینت هم در این حالت لازم نیست.
- این ریپو را Fork کنید.
- در Railway یک سرویس جدید از روی این ریپو بسازید.
- بعد از Deploy، آدرس (host) و پورت این سرویس روی Railway را در پنل Marzban، قسمت Node Settings، بهعنوان یک نود جدید اضافه کنید.
- اگر ترجیح میدهید نود خودش TLS را مدیریت کند (حالت اصلی و امنتر upstream)،
متغیرهای زیر را ست کنید:
SERVICE_TLS=trueSSL_CLIENT_CERT_FILE= مسیر گواهی کلاینتی که از پنل گرفتهاید
چون سورس در build-time کلون میشود، کافیست دوباره روی Railway Deploy بزنید تا آخرین نسخهی Marzban-node گرفته شود؛ نیازی به sync دستی فایلها نیست.