개인 회고 | w4 정민 - boostcampwm2023/web08-ByeolSoop GitHub Wiki
⚡️ Fact
- 도커 환경 구축 및 GitHub Action 배포 자동화를 2일 꼬박 진행했다.
- 별자리선 / 통계 태그 순위 API 구현했다.
- 코어타임에 Task를 다 진행하지 못해서 3일 연속 새벽까지 구현을 했다.
- 별자리선과 연결된 일기가 삭제될 경우, 펑!
- 주말에 OAuth 공부 후 카카오 OAuth 2.0 로그인 구현이 필요하다.
💬 Feeling
- 도커로 배포를 진행할 때 모르는 부분이 많아 검색을 계속 했다. 진행할 때 노션에 끄적끄적 했는데, 왜 이런 근거로 이렇게 구현을 했다! 라고 작성된 부분이 별로 없다. 그때는 분명 생각하고 한 것 같은데..
제대로 기록을 정리해보고 싶다.
- GitHub Action 배포 자동화에 대한 workflow yml 파일을 작성해보면서 될까? 싶었는데 역시나 직접 돌려보지를 못하니까 예상하지 못하는 문제들이 발생했다. Hotfix로 수정하고 이후에 배포가 잘 되는 것을 보면서 너무 뿌듯했다.. 🥹
- 새벽까지 구현하는데, 뭔가 몰입해서 계속 코드를 작성했던 것 같다. 영양가있는 코드를 작성했는지는 모르겠지만..? 그래도 억지로 구현을 하려고 한 것이 아니라 얼른 완성하고 싶어서 열심히 한 느낌이 들었다.
- 피어세션 시간에 다들 왜 도커로 배포하려고 하세요? 라는 질문에 명확하게 답을 생각하지 못했다.
왜 이렇게 배포하려고 했는지도 모른채로 열심히 했나.. 싶었다.
물론 새롭게 해본 과정이라 경험으로 좋았는데, 명확한 근거를 다시 한번 생각하며 기록하는 습관이 필요하다.
🔎 Finding
nginx.conf 파일을 작성해보면서 Nginx가 요청을 어떻게 처리해야 하는지를 정의해볼 수 있었다.
fetch 는 브라우저에서 요청을 보내기 때문에, ip를 제대로 명시해주어야 한다.
- 도커 컨테이너들을 같은 도커 네트워크에 두면서 도커 서비스 이름으로 통신을 시도했었는데, 안되었던 이유가 위와 같았다.
- React로 작성한 코드는 웹 서버에서 정적 파일 서빙만으로도 제공할 수 있다.
- 프로젝트 현황공유 시간에 FE 서버를 굳이 도커 컨테이너로 띄우지 않아도 될 것 같다는 의견을 통해 알 수 있었다.
- 도커 이미지 빌드의 경우 CI 시스템을 통해 수행하는 것이 일반적이다.
운영 중인 서버에서 직접 이미지 빌드를 수행하는 것보다 효율적이다.
- 테스트 코드를 통과했을 때 main 브랜치에 merge 될 수 있도록 workflow를 작성할 수 있다는 사실을 프로젝트 현황공유 / 피어세션 시간에 배웠다.
🍀 Future action
- 프론트엔드 서버는 도커 컨테이너가 아닌 정적 파일 서빙으로 변경하기
- 테스트 코드 통과 시 main 브랜치에 merge 될 수 있도록 추가
- 주말간 통계 모양 순위 API 구현 / 카카오 OAuth 2.0 로그인 학습 후 구현하기
- 구현한 기능에 대한 적절한 테스트 코드 작성하고 실행해보기
📍 Feedback
- 기록 진짜 쉽지않다…. 쉽지 않아도 해야지… 다른건 몰라도 왜 이렇게 구현했는지에 대한 근거가 있다면 적도록 노력하기!