정지용
프로젝트 목록
백엔드

레이싱 게임 매치 처리 백엔드

NestJS와 TypeORM 기반으로 레이싱 게임의 매치 처리를 담당하는 백엔드 구조 정리 문서

racing-game-match-backend-docs최근 업데이트 2026년 7월 26일

개요

온라인 레이싱 게임의 매치(대전) 처리를 담당하는 백엔드 서버의 구조를 정리한 문서 프로젝트입니다. NestJS와 TypeORM을 기반으로 하며, 같은 이름의 서브디렉터리가 중첩되는 구조 패턴으로 모듈을 구성합니다. 로컬 개발 환경과 E2E 테스트 환경의 실행 조건이 다르다는 점을 고려해 Dockerfile을 용도별로 분리했고, DB 마이그레이션과 정적 리소스를 각각 migration/, resource/ 디렉터리로 나누어 관리합니다. Jenkins를 통한 빌드/배포 파이프라인도 함께 구성되어 있습니다.

담당 역할

매치 처리 백엔드의 모듈 구조와 로컬/E2E 실행 환경 분리 등 인프라 구성을 설계하고 문서화했습니다.

아키텍처 다이어그램

레포지토리 분석 결과를 바탕으로 자동 생성된 구조도입니다.

아키텍처

매치 백엔드 구조 개요

NestJS 매치 처리 백엔드의 모듈 구성과 마이그레이션/리소스 분리, 실행 환경별 Docker 구성을 보여주는 다이어그램입니다.

다이어그램을 그리는 중…

기술스택

각 기술을 이 프로젝트에서 어떤 용도로 썼는지 정리했습니다.

프레임워크

  • NestJS매치 처리 백엔드 서버의 기본 프레임워크

언어

백엔드

  • TypeORMDB 엔티티 및 마이그레이션 관리를 위한 ORM

DevOps

  • Docker로컬 개발용과 E2E 테스트용 컨테이너 이미지를 분리 구성
  • Jenkins빌드 및 배포 파이프라인 자동화

핵심 포인트

  • 같은 이름의 서브디렉터리가 중첩되는 모듈 구조 패턴으로 프로젝트를 구성
  • 로컬 개발용 Dockerfile.local과 E2E 테스트용 Dockerfile을 분리 운영
  • migration/, resource/ 디렉터리로 DB 마이그레이션과 리소스 관리를 분리
  • NestJS + TypeORM 기반 백엔드에 Jenkins CI 파이프라인 적용

문제와 해결

문제로컬 개발 환경과 E2E 테스트 환경이 요구하는 실행 조건이 서로 달라 하나의 Dockerfile로는 대응하기 어려움

해결Dockerfile.local을 별도로 두어 로컬용과 E2E용 이미지를 분리 빌드

레포지토리 정보

생성
2026년 7월 26일
최근 커밋
2026년 7월 26일
크기
0 KB
라이선스
없음

이 문서는 2026년 7월 26일 에 자동 분석으로 생성되었습니다.