این ریپازیتوری، پنل Heimdall (نسخهی بهبودیافتهی 3x-ui از sh7CBAC) را به همراه یک nginx reverse proxy اجرا میکند که پنل، ساباسکریپشن و اینباند VLESS/WebSocket را از طریق یک پورت واحد (همان پورتی که Railway اختصاص میدهد) در دسترس میگذارد — دقیقاً همون معماری که برای x4gKing/3x-ui-Upgrade ساختیم و تست شد.
Heimdall بهصورت پیشفرض از SQLite استفاده میکند (نیازی به Postgres نیست، مگر بخواهید تعداد کاربر خیلی بالایی داشته باشید). این نسخه با همان تنظیم پیشفرض ساده (SQLite) پیکربندی شده.
یک ریپازیتوری جدید در گیتهاب بسازید و این سه فایل را در ریشهی آن قرار دهید:
Dockerfilenginx.conf.templatestart.sh
- New Project → Deploy from GitHub repo و همین ریپازیتوری را انتخاب کنید
- Railway بهطور خودکار
Dockerfileرا تشخیص و بیلد میکند (دانلود آخرین نسخهی Heimdall از گیتهاب بهصورت خودکار در زمان Build انجام میشود) - بعد از اتمام دیپلوی، به Settings → Networking بروید و Generate Domain بزنید
- مطمئن شوید Target Port روی 3000 تنظیم شده (چون nginx دقیقاً روی همین پورت گوش میدهد)
https://دامنهشما.up.railway.app/managepanel/
یوزرنیم/پسورد پیشفرض admin/admin را وارد کنید و بلافاصله از تنظیمات پنل تغییرش دهید.
| فیلد | مقدار |
|---|---|
| Protocol | VLESS |
| Listen Port | 8080 (این عدد ثابت است) |
| Listen IP | خالی یا 0.0.0.0 |
| Network | ws |
| Security | none |
| Path | هر مسیر دلخواه، مثلاً /cdn |
vless://UUID@دامنهشما.up.railway.app:443?encryption=none&security=tls&sni=دامنهشما.up.railway.app&fp=chrome&type=ws&host=دامنهشما.up.railway.app&path=%2Fcdn#MyConfig
مسیر ساب بهصورت خودکار زیر همین دامنه در دسترس است:
https://دامنهشما.up.railway.app/sub/USER_SUB_ID
https://دامنهشما.up.railway.app/managepanel/ ← باید پنل را نشان دهد
https://دامنهشما.up.railway.app/cdn ← باید "Bad Request" بدهد (یعنی به Xray رسیده)
- تنظیمات پنل (کاربران، اینباندها) روی فایلسیستم موقت کانتینر ذخیره میشود. برای جلوگیری از پاک شدن با هر Redeploy، از بخش Volumes در Railway یک Volume به مسیر
/etc/x-uiوصل کنید. - اگر خواستید بعداً به Postgres سوییچ کنید (برای تعداد کاربر بالا)، باید Dockerfile و start.sh را برای نصب/اتصال Postgres جداگانه اصلاح کنید — این نسخه فعلی فقط SQLite را پشتیبانی میکند.