Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Golang Amazon S3 통합


Golang Amazon S3 통합


Amazon S3를 Golang과 통합하려면 다음 단계를 따라야 합니다.

전제 조건

1. AWS 계정: Amazon S3를 사용하려면 AWS 계정이 필요합니다.
2. IAM 사용자 설정: 전체 S3 버킷 권한을 가진 IAM 사용자를 생성합니다.

Amazon S3 이해하기

1. S3란 무엇입니까?: Amazon S3(Simple Storage Service)는 AWS에서 제공하는 확장 가능하고 내구성이 뛰어난 클라우드 스토리지 서비스입니다. 이를 통해 사용자는 인터넷을 통해 데이터, 개체 및 파일을 저장하고 검색할 수 있습니다[1].

AWS에서 S3 버킷 생성

1. AWS 콘솔에 액세스: AWS 콘솔을 엽니다.
2. S3 버킷 생성 단계:
- 검색창에 "S3"를 입력하세요.
- 패널 왼쪽에 있는 '버킷 만들기'를 클릭합니다.
- 지역(예: `ap-southeast-1`)을 포함하여 필수 데이터를 입력합니다.
- 모든 공개 접근(개발용) 차단을 체크 해제하세요.
- 버킷[1]을 생성합니다.

Golang으로 코딩하기

1. S3에 파일 업로드:
- 세션을 생성합니다.
- 업로더를 만듭니다.
- 업로더[1]를 사용하여 파일을 업로드합니다.
2. S3에서 파일 다운로드:
- 세션을 생성합니다.
- 다운로더를 만듭니다.
- 다운로더[1]를 사용하여 파일을 다운로드합니다.
3. S3 버킷 나열:
- 세션을 생성합니다.
- S3 클라이언트를 생성합니다.
- 클라이언트[1]를 사용하여 버킷 목록을 가져옵니다.
4. S3 버킷의 객체/항목 나열:
- 세션을 생성합니다.
- S3 클라이언트를 생성합니다.
- 클라이언트[1]를 사용하여 버킷에 있는 개체/항목 목록을 가져옵니다.

추가 리소스

1. Go용 AWS SDK: Go용 AWS SDK는 Go 개발자에게 일관되고 친숙한 라이브러리 세트를 제공하여 AWS 서비스 사용을 단순화합니다. 단순화된 개발을 위해 더 높은 수준의 추상화를 지원하고 요청 및 응답 파이프라인을 확장하거나 사용자 정의하기 위한 미들웨어 스택을 제공합니다[4].
2. 코드 샘플: Go용 SDK 코드 샘플에는 애플리케이션 개발을 가속화하는 데 도움이 되는 AWS 서비스의 실제 사용 사례가 포함되어 있습니다[4].
3. Golang을 사용하여 S3 프로토콜을 지원하는 비 AWS 클라우드 스토리지 서비스와 통합하기 위한 가이드: 이 가이드는 S3 프로토콜에 대한 포괄적인 개요와 S3 프로토콜을 사용하여 S3 프로토콜을 지원하는 비 AWS 클라우드 스토리지 서비스와 통합하는 방법을 제공합니다. 골랭[5].

비디오 튜토리얼

1. Go를 사용한 AWS S3 버킷 작업: 이 비디오 자습서에서는 AWS Go SDK[3]를 사용하여 파일 생성, 나열, 업로드 및 다운로드와 같은 AWS S3 버킷 작업을 처리하는 방법을 보여줍니다.

인용:
[1] https://blog.stackademic.com/aws-s3-and-golang-ebc32887aee8?gi=2d59895deac6
[2] https://docs.aws.amazon.com/ja_jp/sdk-for-go/v1/developer-guide/using-s3-with-go-sdk.html
[3] https://www.youtube.com/watch?v=R6W1ay4jYKk
[4] https://aws.amazon.com/sdk-for-go/
[5] https://hackernoon.com/guide-to-integrating-with-non-aws-cloud-storage-services-supporting-the-s3-protocol-using-golang