[go] Go 언어를 사용하여 AWS S3 버킷에 파일 업로드하기
AWS SDK for Go를 사용하면 Go 언어로 AWS S3에 파일을 업로드할 수 있습니다. 이를 통해 간단한 Go 프로그램으로 손쉽게 파일을 S3 버킷으로 전송할 수 있습니다.
1. AWS SDK for Go 설치하기
우선, AWS SDK for Go를 설치해야 합니다. 아래 명령어를 사용하여 SDK를 설치합니다.
go get -u github.com/aws/aws-sdk-go
2. AWS 자격 증명 구성하기
AWS 자격 증명을 구성하여 SDK가 인증을 위해 필요한 정보를 제공할 수 있도록 해야 합니다. 로컬 환경 또는 환경 변수 등을 통해 AWS 자격 증명을 구성할 수 있습니다.
3. 파일 업로드 코드 작성하기
아래는 Go를 사용하여 AWS S3 버킷에 파일을 업로드하는 코드 예시입니다.
package main
import (
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/s3"
"os"
)
func main() {
// 세션 생성
sess, _ := session.NewSession(&aws.Config{
Region: aws.String("ap-northeast-2"), // AWS 지역에 맞게 지정
})
// S3 서비스 클라이언트 생성
svc := s3.New(sess)
// 업로드할 파일
file, err := os.Open("example.txt")
if err != nil {
panic(err)
}
defer file.Close()
// S3 버킷에 파일 업로드
_, err = svc.PutObject(&s3.PutObjectInput{
Bucket: aws.String("myBucket"),
Key: aws.String("myFile"),
Body: file,
})
if err != nil {
panic(err)
}
}
요약
이제 위의 코드를 통해 간단하게 Go를 사용하여 AWS S3에 파일을 업로드할 수 있습니다. AWS SDK for Go를 이용하여 다양한 AWS 서비스와 상호 작용하는 기능을 구현할 수 있으니 참고하여 활용하시기 바랍니다.