À propos du projet
tgstation-server (TGS) est une boîte à outils pour gérer des serveurs de jeu DreamMaker en production, principalement ceux exécutant des bases de code Space Station 13. Il est écrit en C# et distribué sous forme de service Windows, démon console, paquet Linux, flake Nix ou conteneur Docker.
Capacités principales décrites dans le README :
- Mettre à jour un serveur en cours d'exécution sans l'arrêter ; les changements prennent effet au prochain redémarrage du serveur.
- Démarrer le serveur et le redémarrer automatiquement en cas de plantage.
- Gérer le code et les fichiers de jeu des instances.
- Fusionner localement des pull requests GitHub pour des déploiements de test.
- Panneau de contrôle web servi depuis le serveur.
- Point de terminaison de métriques Prometheus et ingestion optionnelle des journaux dans Elasticsearch.
- Connexion OAuth et authentification par passerelle pour GitHub, Discord et InvisionCommunity.
- Un système de swarm pour coordonner plusieurs serveurs TGS autour d'une base de données partagée.
Stockage et configuration :
- Nécessite une base de données relationnelle. SQLite est inclus mais non recommandé à grande échelle ; les bases de données autonomes prises en charge sont MariaDB, PostgreSQL, Microsoft SQL Server et MySQL.
- Configuration via appsettings.Production.yml, variables d'environnement ou arguments de ligne de commande. Un assistant de configuration s'exécute au premier lancement.
- Les paramètres notables incluent les limites d'instances/utilisateurs, les chemins d'instance valides, le jeton d'accès GitHub, le répertoire et le niveau des journaux, l'URL du point de terminaison Kestrel et les détails de connexion à la base de données.
Options de déploiement :
- Programme d'installation Windows, paquet winget ou zip manuel (ServerService ou ServerConsole).
- Dépôt apt Ubuntu/Debian en une ligne, flake Nix, installation manuelle avec unité SystemD ou image Docker.
- La prise en charge d'OpenDream nécessite l'installation séparée du SDK .NET.
Cette présentation reflète uniquement ce que documente le README ; aucune affirmation de performance ou de classement n'est faite.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.