대안학교 맞춤형 정보 시스템 개발 프로젝트
백엔드 개발 (JavaScript, Node.js, MongoDB, Redis)
- 아카데미를 생성하고 백업하는 운영자 전용 기능을 구현했습니다.
- 사용자 계정, 학교와 학기를 관리하는 관리자 전용 기능을 구현했습니다.
- 수업 개설, 수강신청, 평가 등 수업 관련 기능을 구현했습니다.
- 실시간 알림, 학생 기록 파일 업로드 등의 편의 기능을 구현했습니다.
AWS 배포 환경 구축 (AWS EC2, AWS S3)
서버는 AWS EC2와 AWS ALB로 배포했으며, 클라이언트는 AWS S3와 AWS CloudFront로 배포했습니다.
배포 자동화 구현 (Github Actions, Docker)
기존에는 EC2 인스턴스에 ssh로 접속하여 최신 브랜치를 받아 서버를 직접 실행했습니다. 이러한 방법은 과정이 번거롭고 다른 팀원들이 배포하는데에 어려움이 있었습니다. 이를 해결하기 위해 Github Actions를 사용하여 특정 브랜치에 push가 일어나면 자동으로 도커 이미지가 빌드되고 EC2 인스턴스에서 자동으로 이미지를 받아 실행하도록 구성했습니다. 또 배포 결과를 슬랙으로 전송해 쉽게 확인할 수 있도록 하여 생산성을 높였습니다.
더보기