프로젝트를 진행하던 중, 파일 관리를 위해 AWS의 S3 서버를 스프링 부트와 연동해서 적용했습니다. 그런데 로컬에서 스프링 서버를 실행시켜보니 다음과 같은 오류가 발생했습니다. 오류 내용 com.amazonaws.SdkClientException: Failed to connect to service endpoint Caused by: java.net.SocketException: Network is unreachable: connect 오류 원인 AWS-SDK 에러가 발생하는 이유는 build.gradle에 spring-cloud-starter-aws 의존성을 주입시, 로컬 환경은 aws 환경이 아니기 때문에 나는 에러입니다. 해결 방법 해결 방법은 다음 2가지가 있다고 한다. 로그 자체를 보이지 않게..
EC2 서버를 이용하여 프로젝트를 배포하고 나니, 게시글 이미지와 회원 프로필 이미지에 대한 부분이 개인 로컬 PC에 저장되도록 구현되어 있는 부분을 S3 서버를 적용하여 파일을 관리하고자 적용해보려고 합니다. [ 기존 설정 ] upload: post: image: location: /Users/zerozae/Desktop/sharing_platform_server/post/ member: image: location: /Users/zerozae/Desktop/sharing_platform_server/member/ 기존 yml 설정을 통해 개인 로컬 PC에 이미지에 대한 파일 관리를 하고 있었습니다. 이제, 이전에 생성한 IAM과 버킷을 이용해 S3 서버를 통해 스프링 부트와 연동하여 파일을 관리해보는..
이번 포스팅에서는 AWS의 S3를 이용하기 위해 사용자 및 버킷을 생성해보도록 하겠습니다. S3 무료 여부 S3를 사용하기 이전, S3의 무료 적용 제한 범위를 살펴보겠습니다. 표준 스토리지 5GB까지 무료 가입일을 기준으로 12개월 동안 사용이 가능합니다. GET 요청 20,000건 무료 PUT 요청 2,000 무료 사용자 생성 (1) IAM 이동 AWS Console > IAM 검색 > 주요 기능의 사용자 클릭 (2) 사용자 생성 클릭 (3) 사용자 이름 작성 (4) 권한 설정 권한 옵션은 직접 정책 연결을 클릭합니다 권한 정책은 AmazonS3FullAccess를 선택합니다. (5) 사용자 생성 완료 사용자 생성을 클릭하면 사용자가 생성됩니다. 액세스 키 만들기 (1) 사용자 확인하기 먼저 생성한 ..
지난 AWS의 EC2를 이용해 스프링 프로젝트를 빌드하고, 배포해보는 작업을 수행했습니다. 이번 포스팅에서는 기존 로컬 폴더에 파일 업로드 하던 방식에서 AWS의 S3를 이용해 서버에 파일을 업로드하는 부분을 구현하기 이전에 기초 개념에 대해 살펴보고 다음 포스팅에 이어 구현해보도록 하겠습니다. AWS S3 ? S3는 Simple Storage Service의 약자로 주로 파일 서버로 사용되고, AWS가 제공하는 객체 스토리지 서비스 데이터를 저장, 검색, 삭제할 수 있습니다. 한마디로 구글 드라이브 같은 저장소 입니다. S3는 물리적인 저장소의 한계를 논리적인 방식으로 극복하여 S3에서는 자동적으로 복제본을 생성해 손상이 되더라도 복제본이 남아있습니다. S3 관련 용어 (1) 버킷 (Buckets) 저..