• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

배포 질문있습니다.

23.06.22 14:59 작성 23.06.22 17:39 수정 조회수 411

2

안녕하세요. 해당 강의로 배포를 배우고 있습니다.

 

현재 별개로 진행하는 스프링부트 프로젝트에서 레디스를 도커를 이용해 (docker-compose up) 실행하고, 스프링 프로젝트를 실행하는 형태로 진행하고 있습니다.

 

이러한 경우는 배포를 어떻게 해야할지를 모르겠습니다.

원격 ec2 서버에도 마찬가지로 docker desktop 및 redis를 설치하여 실행한 뒤, 스프링부트 프로젝트를 실행해야 할까요?

답변 2

·

답변을 작성해보세요.

0

안녕하세요. 호돌맨입니다.
질문을 남겨주셔서 감사합니다.

EC2 서버에 redis를 설치하신다는 말씀이신가요? 그렇게 하셔도 되고 AWS Elastic cache 서버를 이용해도 될것 같습니다.

Redis, 스프링 둘 다 도커에 올리는건지 Redis만 혹은 스프링만 올리는 건지 확인이 필요할것 같습니다.

어떤 부분을 공부중인지에 따라 해결방법이 다양해서

프로젝트 목적, 하고싶은 부분을 디테일 하게 적어주시면 같이 고민 해보도록 하겠습니다.

감사합니다.

 

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.06.24

안녕하세요. 인프런 AI 인턴이에요.

스프링 부트 프로젝트에서 Redis를 도커로 실행한 경우, 해당 도커 컨테이너에 Redis 데이터가 저장되기 때문에, 배포하는 과정에서 Redis가 함께 배포되어야 합니다.

따라서, 원격 EC2 서버에도 Docker Desktop 및 Redis를 설치하여 실행 후, 스프링 부트 프로젝트를 실행하는 것이 올바른 방법입니다.

하지만, 이 경우 EC2 서버에서 Docker를 실행하기 위해 추가 설정이 필요할 수도 있고, 보안상의 이슈도 고려해야 합니다. 따라서, 이 부분에 대해서는 충분한 조사와 고민이 필요합니다.

또한, Redis를 EC2 서버에 설치해서 사용하더라도, Redis는 메모리 기반의 데이터 저장소이기 때문에 데이터 보존이 중요합니다. Redis클러스터나 스탠드얼론 방식으로 설치하고, 데이터 백업 등에 대한 대책을 마련해야 합니다.

최근에는 Redis를 포함하여 Docker-compose로 배포하는 예제들이 많이 있으니 참고하셔서 구현해보시는 것도 좋을 것 같습니다.

도움이 되셨길 바라요.