현재 진행 중인 작업에 대해 몇 가지 다음 단계를 제안드리겠습니다:
- S3 이미지 저장소 설정:
- AWS S3 버킷을 생성하고, 버킷의 퍼미션 및 CORS 설정을 적절히 구성합니다.
- 프론트엔드에서 이미지를 업로드하는 기능을 구현하고, 백엔드에서는 S3와 연동하여 이미지 URL을 저장할 수 있도록 설정합니다.
- AWS SDK를 사용하여 S3에 업로드하거나,
axios 등을 사용하여 이미지를 프론트엔드에서 S3로 업로드하는 방식도 가능합니다.
- Elastic Cache (Redis) 설정:
- AWS Elasticache Redis 클러스터를 생성하고, EC2 인스턴스와 연결할 수 있도록 보안 그룹을 설정합니다.
- Spring Boot에서 Redis를 사용하려면
spring-boot-starter-data-redis 의존성을 추가하고, 연결 정보를 application.properties에 설정합니다.
- CI/CD 설정 (GitHub Actions):
- GitHub Actions에서 CI/CD 파이프라인을 구축하여, 코드 푸시 시 자동으로 빌드, 테스트 및 배포가 이루어지도록 설정합니다.
- 빌드와 테스트가 EC2나 AWS CodeBuild와 같은 서비스를 통해 이루어지도록 설정할 수 있습니다.
- 배포 시 EC2에 자동으로 배포되도록
AWS CLI를 사용하여 스크립트를 작성할 수 있습니다.
- React 프론트엔드 배포:
- React 앱을 빌드하고, AWS S3 버킷을 사용해 정적 파일을 호스팅합니다.
- CloudFront를 설정하여 CDN을 통해 전 세계적으로 빠른 로딩을 보장합니다.
- React 앱의 URL을 EC2 백엔드 API와 연동하여 통신이 가능하도록 설정합니다.
이 순서대로 진행하면서 각 단계를 점검하고 테스트해 나가시면 될 것 같습니다.