자 CI/CD를 한번 구현해 보자. 이거에 대한 트러블 슈팅도 엄청 많다. 물론 내가 처음 해봐서 무지성으로 한 것도 있지만이 트러블 슈팅과 이 과정을 통해 다음번에 CI/CD를 구현할 때는, 깃허브 액션에서만큼은 조금 더 헤매지 않고 보다 더 빠른 시간 안에 구현할 수 있지 않을까 생각해 본다. [Setup] GitHub Actions 기반 CI/CD 파이프라인 구성GitHub Actions를 통해 CI/CD 파이프라인을 구성하여 애플리케이션을 자동으로 빌드, 테스트, 배포 보안을 위해 AWS Certificate Manager로 SSL 인증서를 관리하고, 컨테이너화된 애플리케이션은 ECS를 통해 배포하며, Docker 이미지는 ECR에 저장 GitHub Actions 워크플로우 파일 작성 Dock..
전체 글
깃허브: https://github.com/kiseokkm백엔드는 aws로 배포했고.. 프런트는 뭐로 배포할지 고민을 하다가 vercel로 배포로 하기로 했다.vercel을 처음 들어봤지만, 매우 간단하다고 해서 해보기로 했다.[Setup] Vercel 기반 프런트엔드 배포 및 환경 설정 #72Vercel을 통해 프런트엔드를 배포하고, 환경 변수를 설정하여 배포된 애플리케이션이 백엔드와 올바르게 통신하도록 구성Vercel 프로젝트 생성 및 GitHub 레포지토리 연동Vercel 환경 변수 설정배포 후 기본 URL 설정CORS 정책 설정 이렇게 이슈를 작성했다. vercel에서 프로젝트 생성 및 깃허브 레포지토리와 연동하려고 하는데,결제를 해야 한다!? ... 결제 하라 해서 일단 유료인데 무료인 버전을 썼다. 무슨 느낌인지 아시죠?pro인데 아닌, 30일 쓸 ..
자 서비스 생성까지 했고, 그다음 AWS Certificate Manager에서 SSL 인증서 발급을 해보자 그다음 ELB 생성 및 SSL 인증서 적용하면 된다.ELB 생성 후, 리스너 및 규칙까지 적용해 줬다. 그다음 도메인과 로드 밸런서 연결 후 애플리케이션 초기 배포 및 테스트하면 된다.짠, 한 번에 됐을까? 당연히 안됐다.일단 로드 밸런서에서 설정 이슈가 있었다. 그래서 헬스 체크하는 라이브러리를 사용했다.그리고 ECS 배포 시 RDS 연결 이슈가 있었다. 나는 Fargate를 썼다. ECS에서 Fargate로 배포 시도 시애플리케이션이 실행이 안 되는 이슈가 있었다. DB가 연결할 수 없다는 로그가 떠서, 인바운드 규칙 생성 후env 파일 수정 후 재 실행해 줬다.내가 맡았지만, 나 혼자는..
일단 도메인을 샀다. 가비아에서, 연결을 해줬다. 그리고 일단 깃허브 이슈를 작성했다. 새로 시작하는 마음으로 [Setup] AWS 인프라 설정 및 애플리케이션 배포 AWS ECS, ECR 및 AWS Certificate Manager를 활용하여 애플리케이션 인프라를 설정하고 초기 배포를 진행. SSL 인증서를 로드 밸런서에 적용하여 HTTPS 통신을 지원 도메인 구매 및 AWS Route 53에 도메인 등록 AWS ECR 레포지토리 생성 및 Docker 이미지 푸시 AWS ECS 클러스터 및 서비스 설정 AWS Certificate Manager에서 SSL 인증서 발급 Elastic Load Balancer 생성 및 SSL 인증서 적용 도메인과 로드 밸런서 연결 애플리케이션 초기 배포 및 테..
백엔드 부분 1차 스코프 일정을 마치고, 중간발표를 진행 했다. 중간발표 영상: 내가 업로드했지만 영상은 다른 분이 찍으셨다.https://www.youtube.com/watch?v=L4MEjR3aq1w 아래는 ppt 일부이다. 2차 스코프를 정하는 과정에서 AWS 배포와 CI/CD 파이프라인 구성 부분이 있었다. 다른 팀원들이 이끌려 하지 않는 분위기였던 것 같아서, 먼저 선택권을 주었다.사실 이 프로그램이 끝나면 Kubernetes와 Docker 등 AWS 관련 공부를 하려고 생각했지만, 막상 아무 개념도 없이 실습으로 바로 들어간다고 생각하니 막막했다.그래도 어차피 나중에 해야 할 일이니 미리 부딪혀 보는 것이 좋겠다고 생각해서 저 부분을 맡았다.물론 지나고 나서 생각해보면, 혼자서는 절대 해낼 ..
특정 스페이스 멤버 조회 api도 만들었다.스페이스 멤버 조회 API 추가(스페이스에 가입한 사용자들의 목록을 반환하는 API를 추가) 아래 코드는 Controller Facade Service Repository 합친 코드이다. @GetMapping("/{spaceId}/members") public Flux getSpaceMembers(@PathVariable Long spaceId) { return spaceFacade.getSpaceMembers(spaceId); } public Flux getSpaceMembers(Long spaceId) { return spaceService.getSpaceMembers(spaceId) ..