[TIL] (231014) 파이널 프로젝트 - 10
10/14 회의록
1. 회의 안건
- 1차 기술멘토링
- 배포환경 결정을 위한 아키텍처 설정 및 플로우 확인 (도메인)
- 현재 작업 현황
2.회의 내용
-
1차 기술멘토링
- 기술멘토링 피드백 과정
- 사용 아키텍처 결정
- 1) 보류
- 우리 프로젝트 기준으로 하나의 도메인에 한 팀이 붙을 정도로 도메인별로 서버가 만들어져야 함
- 서버간의 통신, 데이터 정합성을 맞추기도 어렵기 때문에 지금 프로젝트에서는 비추천함
- 아키텍쳐는 선택은 보류
- 2) Docker는 사용
- 다만, Docker를 사용하면 왜 좋은지에 대해 명확하게 알고 사용하라고 하심
- 3) Nginx 사용
- 4) Redis 는 EC2에 직접설치
- 리소스를 줄이려면 AWS를 쓰는것도 좋지만 비용적인 문제도 있고 EC2에 설치해도 무방하기 때문에 EC2에 설치하는것도 좋다고 하심
- 5) CI/CD 방식 결정
- 백엔드는 AWS로, 프론트는 Git Hook 을 추천해주심
- RefreshToken 헤더 전송 방식 문의
- 보통 RereshToken을 클라이언트에게 주는 방식으로 많이 사용해서 RefreshToken을 Redis에만 저장하는 로직은 생각해보신적이 없다고 함
- 다른 기술멘토님도 긍정적으로 생각하지 않으시는것으로 예상하며, 내가 생각한 방식대로 구현을 해봤고 정상적으로 작동하긴 하나 추후 현업에서는 두가지 토큰을 전부 보내는 방식으로 사용할 것 같아서 생각한 방식대로 구현해봤다는것에 의의를 두고 보편적인 방식으로 구현하기로 결정함
-
플로우 결정
- CI/CD 워크플로우
- 도메인 발급 (구매) (HTTPS) [1년] → .net 도메인 구매 결정
- main 브랜치 잠금해제 및 설정파일 변경(Reids)
- DockerHub 레포지토리 생성 or CodeDeploy, AWS S3 생성
- EC2 생성
- EC2 내부 작업
- 레디스 server 설치
- Docker(compose) 설치
- Dockerfile 작성 (nginx + springboot)
- nginx config 설정 (https)
- 깃액션 CI/CD 구축
- 시크릿 환경변수값 추가
- deploy.yml 코드 작성
- Deploy 작동 테스트
- 블루-그린 무중단 배포 설정 (나쥬거..)
- nginx config 변경
- 깃액션 CI/CD deploy 코드 변경
-
현재 작업 진척도
- BE 파트
- 노지현 : 보편적인 방식을 따라 RefreshToken을 Header에 함께 보내주기로 함
- 진민지 : 무중단 배포를 위한 작업을 시작하려 함 → 도메인 구입 ( .net )
- 백상용 : 알림 기능 코드 작성 및 에러 수정 작업 진행중.
- 양승민 : 응답기능 추가 완료 → 그 이후 결과 표시창 표현 API 작성 예정.
- FE 파트
- 지유진 : 메인 페이지 / 퀴즈 문항 작성 페이지 기본 골격 작업 중 /
공통 컴포넌트 일부 생성 ( ~ 15일까지 예정)
- 김민경💕 : 공통 컴포넌트 일부 생성 / 헤더 - 회원가입 작업 중
- 추가 내용
- 아키텍처를 피드백을 수용하여 결정 → net도메인을 바탕으로 FE&BE 협업 할 예정
- 위의 사항으로 인하여 Vercel을 통하여 FE 배포 예정