프로젝트 소개
tgstation-server(TGS)는 프로덕션 DreamMaker 게임 서버, 주로 Space Station 13 코드베이스를 실행하는 서버를 관리하기 위한 도구 모음입니다. C#으로 작성되었으며 Windows 서비스, 콘솔 데몬, Linux 패키지, Nix flake 또는 Docker 컨테이너로 배포됩니다.
README에 설명된 핵심 기능:
- 실행 중인 서버를 중지하지 않고 업데이트하며, 변경 사항은 다음 서버 재부팅 시 적용됩니다.
- 서버를 시작하고 충돌 시 자동으로 재시작합니다.
- 인스턴스의 코드와 게임 파일을 관리합니다.
- 테스트 배포를 위해 GitHub 풀 리퀘스트를 로컬에서 병합합니다.
- 서버에서 제공되는 웹 기반 제어 패널.
- Prometheus 메트릭 엔드포인트 및 선택적 Elasticsearch 로그 수집.
- GitHub, Discord, InvisionCommunity에 대한 OAuth 로그인 및 게이트웨이 인증.
- 공유 데이터베이스를 대상으로 여러 TGS 서버를 조정하기 위한 swarm 시스템.
스토리지 및 구성:
- 관계형 데이터베이스가 필요합니다. SQLite가 번들로 제공되지만 대규모 환경에는 권장되지 않습니다. 지원되는 독립 실행형 데이터베이스는 MariaDB, PostgreSQL, Microsoft SQL Server, MySQL입니다.
- appsettings.Production.yml, 환경 변수 또는 명령줄 인수를 통해 구성합니다. 첫 실행 시 설정 마법사가 실행됩니다.
- 주요 설정에는 인스턴스/사용자 제한, 유효한 인스턴스 경로, GitHub 액세스 토큰, 로그 디렉터리 및 수준, Kestrel 엔드포인트 URL, 데이터베이스 연결 세부 정보가 포함됩니다.
배포 옵션:
- Windows 설치 프로그램, winget 패키지 또는 수동 zip(ServerService 또는 ServerConsole).
- Ubuntu/Debian apt 저장소 원라이너, Nix flake, SystemD 유닛을 사용한 수동 설정 또는 Docker 이미지.
- OpenDream 지원을 위해서는 .NET SDK를 별도로 설치해야 합니다.
이 개요는 README에 문서화된 내용만 반영하며, 성능이나 순위에 대한 주장은 하지 않습니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.