عن المشروع
tgstation-server (TGS) هي مجموعة أدوات لإدارة خوادم ألعاب DreamMaker الإنتاجية، وبشكل أساسي تلك التي تشغّل قواعد أكواد Space Station 13. وهي مكتوبة بلغة C# وتُوزَّع كخدمة Windows أو برنامج خفي يعمل على الطرفية أو حزمة Linux أو Nix flake أو حاوية Docker.
القدرات الأساسية الموضحة في README:
- تحديث خادم يعمل دون إيقافه؛ وتسري التغييرات عند إعادة تشغيل الخادم التالية.
- تشغيل الخادم وإعادة تشغيله تلقائيًا إذا تعطل.
- إدارة الكود وملفات اللعبة للمثيلات.
- دمج طلبات السحب من GitHub محليًا لعمليات النشر الاختبارية.
- لوحة تحكم عبر الويب تُقدَّم من الخادم.
- نقطة نهاية لمقاييس Prometheus وإمكانية استيعاب سجلات Elasticsearch اختياريًا.
- تسجيل دخول OAuth ومصادقة بوابة لـ GitHub وDiscord وInvisionCommunity.
- نظام سرب لتنسيق عدة خوادم TGS مقابل قاعدة بيانات مشتركة.
التخزين والإعداد:
- يتطلب قاعدة بيانات علائقية. SQLite مضمّنة لكن لا يُنصح بها على نطاق واسع؛ قواعد البيانات المستقلة المدعومة هي MariaDB وPostgreSQL وMicrosoft SQL Server وMySQL.
- يتم الإعداد عبر appsettings.Production.yml أو متغيرات البيئة أو وسائط سطر الأوامر. يعمل معالج إعداد عند أول تشغيل.
- تشمل الإعدادات البارزة حدود المثيلات والمستخدمين، ومسارات المثيلات الصالحة، ورمز وصول GitHub، ودليل السجلات ومستواها، وعنوان URL لنقطة نهاية Kestrel، وتفاصيل الاتصال بقاعدة البيانات.
خيارات النشر:
- مثبّت Windows أو حزمة winget أو ملف مضغوط يدوي (ServerService أو ServerConsole).
- سطر واحد لمستودع apt على Ubuntu/Debian أو Nix flake أو إعداد يدوي مع وحدة SystemD أو صورة Docker.
- يتطلب دعم OpenDream تثبيت .NET SDK بشكل منفصل.
تعكس هذه النظرة العامة فقط ما يوثقه README؛ ولا تُقدَّم أي ادعاءات حول الأداء أو الترتيب.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.