Docker를 이용해서 서버를 배포하면 Ubuntu 18.04에서도 Node 18.17.1 버전을 사용할 수 있는 것을 확인했습니다.
계획 상으로는 FE/BE 별 prod/dev 서버를 각각 도커를 이용하여 포트 수준에서 구분하고자 합니다. 현재 데모를 위해서는 FE/BE 서버 하나씩만 배포할 예정입니다.
사용자의 문제 별 풀이 상황도 도커 컨테이너를 통해서 격리될 예정입니다. 접속자 수에 따라 컨테이너를 추가로 배포하고, 최종적으로는 서버까지 추가하고 싶습니다.
컨테이너 서버 최소 사양(1 CPU, 메모리 2GB, 디스크 50GB) 기준으로 저장 공간만 생각했을 때 약 1000개의 컨테이너를 배포할 수 있습니다.
문제 풀이 상황의 경우 alpine 리눅스에 git 설치한 도커 이미지를 만들어 사용 중입니다.
아래 세 가지 API 도입했고, Swagger도 같이 해 보았습니다. 처음 써 봐서 FE 피드백 기다리는 중입니다.
GET /api/v1/quizzes/
문제 리스트를 조회하는 API입니다.
GET /api/v1/quizzes/:id
문제 하나를 조회하는 API입니다.
POST /api/v1/quizzes/:id/command
문제 컨테이너에 명령을 실행하는 API입니다.
영속성
데이터로 저장되어야 함