Marzban-Panel
این ریپازیتوری دقیقاً به همان روش ریپازیتوری PasarGuard ساخته شده:
بهجای اینکه سورس Marzban را داخل ریپو کپی (vendor) کنیم، Dockerfile در
لحظهی build خودش سورس رسمی را از
Gozargah/Marzban کلون میکند،
داشبورد را میسازد، Xray را نصب میکند و ایمیج نهایی را میسازد.
مزیت این روش نسبت به کپیکردن سورس داخل ریپو:
- همیشه آخرین نسخهی Marzban را میگیرید (هیچ فایلی "جا نمیماند" یا قدیمی نمیشود).
- حجم ریپوی شما خیلی کوچک میماند (فقط چند فایل دیپلوی).
- آپدیت گرفتن از آپستریم = فقط دوباره Deploy کردن روی Railway.
نصب
این ریپو را در گیتهاب خودتان Fork کنید.
در Railway: New Project → Deploy from GitHub Repo و ریپوی فورکشده را انتخاب کنید.
صبر کنید تا Build تمام شود (بهخاطر build گرفتن از داشبورد، کمی طول میکشد).
(اختیاری ولی پیشنهادی) در تب Variables این دو متغیر را اضافه کنید تا اولین ادمین بهصورت خودکار ساخته شود:
SUDO_USERNAMESUDO_PASSWORD
اگر تنظیم نکنید، بعداً از Console سرویس همین دستور را بزنید:
marzban-cli admin create --sudoدیتابیس پیشفرض SQLite است. اگر میخواهید از Postgres پلاگین Railway استفاده کنید، متغیر
SQLALCHEMY_DATABASE_URLرا در Variables ست کنید.
نکات
- پورت را Railway خودش از طریق
$PORTتزریق میکند؛ نیازی به تنظیم دستی نیست. - برای تغییر نسخهی Marzban که کلون میشود، آرگومان build به نام
MARZBAN_REFرا درrailway.toml/ تنظیمات Build اضافه کنید (پیشفرض:master).
