개발 블로그
article thumbnail
Published 2023. 5. 15. 23:11
[TIL] DAY 43 항해99

스프링부트로 만든 어플리케이션에서 AWS 리소스를 사용하기 위해서 아래와 같은 라이브러리를 추가했다.

 

그랬더니 이런 에러가 발생했다.

어플리케이션 실행은 문제 없이 되긴했지만 도대체 무슨 에러인가 찾아보니 로컬 환경은 EC2가 아니라서 발생하는 에러라고 했다.

 

그래서 이를 해결하고자 어플리케이션 실행 시 일부 파일들은 실행하지 않는 방식을 사용했다.

이렇게 해서 EC2 관련 에러는 사라졌지만 S3에 이미지 파일이 저장되지 않는 문제가 발생했다.

 

에러 메시지를 보니 S3Client의 region과 실제 이미지 업로드를 하려 하는 버킷의 region이 일치하지 않아 발생하는 문제였다. 

 

그래서 직접 출력해서 확인해보니 분명 S3Client를 만들 때 'ap-northeast-2'로 region을 설정하고 있음에도 이게 'us-east'로 설정이 되고 있었다.

 

properties 파일에 있는 값이 주입이 안 되는 건가 싶어 S3Client를 만들 때 직접 입력을 해줬음에도 이것이 해결되지 않아 고민하던 중 exclude에 있는 한 클래스가 눈에 들어왔다.

 

'org.springframework.cloud.aws.autoconfigure.context.ContextRegionProviderAutoConfiguration.class'

 

클래스 이름을 보니 분명 region과 관련이 있다고 판단했고 exclude에서 지우고 실행했더니 원하는 대로 'ap-northeast-2'로 설정이 되어 이미지 파일이 다시 업로드가 잘 됐다.

 

EC2 관련 에러를 없애기 위해서 아무 생각없이 구글링해서 나온 방법을 그대로 가져다 썼었는데 이게 또 다른 영역에도 영향을 미치는 것을 보고 반성하게 됐다.

 

평소 설정 관련 부분들은 그냥 구글링해서 나온 것을 따라하기 바빴는데 앞으로는 이게 어떤 설정인 건지 제대로 알아봐야겠다.

'항해99' 카테고리의 다른 글

[TIL] DAY 45  (0) 2023.05.18
[TIL] DAY 44  (0) 2023.05.16
[WIL] Week 6  (0) 2023.05.14
[WIL] Week 5  (1) 2023.05.07
[TIL] DAY 34  (1) 2023.05.07
profile

개발 블로그

@하얀.손

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!