Github Action을 활용한 배포 자동화 CI/CD - (3) S3 버킷 생성하기

유아 Yooa·2023년 1월 7일
0

CI/CD

목록 보기
3/9
post-thumbnail

Overview

나의 탐라 프로젝트에서는 S3 버킷을 사용해 사진 파일을 저장하고 조회한다. 오늘은 S3 버킷을 생성해보자


1. S3 버킷 생성하기

S3(Simple Storage Service)란 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스이다.

  • S3는 데이터를 버킷 내의 객체로 저장한다.
  • 객체는 해당 파일을 설명하는 메타데이터이며, 버킷은 객체에 대한 컨테이너이다.
  • REST 인터페이스를 통해 저장 / 삭제 / 조회가 가능합니다.

1. S3 생성하기

AWS 콘솔안에서 S3를 검색한다.

버킷 만들기를 클릭한다.

버킷 이름은 고유값으로 설정해야 한다.

Spring을 통해 S3에 파일을 업로드하기 위해서는 ACL을 활성화해야 한다. 비활성화 상태라면 AmazonS3Exception: The bucket does not allow ACL이 발생한다

S3의 퍼블릭 액세스 권한을 설정한다. 외부에 S3를 공개할 경우 모든 퍼블릭 액세스 차단을 체크 해제하면 된다.

퍼블릭 액세스를 차단할 경우, IAM에서 AWSAccessKeyId, AWSSecretKey를 발급받고 키를 이용해서 S3 객체에 접근할 수 있다.

1-1. 버킷 정책 설정

S3 인스턴스를 클릭한 후 권한 메뉴를 클릭한다. 아래에 버킷 정책에서 편집을 누르면 에딧이 가능한 창으로 변한다.

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AddPerm",
            "Effect": "Allow",
            "Principal": "*",
            "Action": [
                "s3:GetObject",
                "s3:PutObject",
                "s3:DeleteObject"
            ],
            "Resource": "arn:aws:s3:::bucket이름/*"
        }
    ]
}

해당 내용 입력 후 설정을 완료한다.


2. AWS IAM 사용자 생성하기

콘솔창 검색창에 IAM 검색한다.

사용자 추가를 누른다.

사용자 이름을 설정하고 프로그래밍 방식 액세스 방식을 선택한다.

기존 정책 직접 연결을 누르고, AmazonS3FullAccess 조회 후 선택한다.

이후는 다음을 눌러서 추가를 완료한다.

액세스 키, 비밀 액세스 키는 나중에 스프링 설정에서 쓰이기 때문에 메모해두자.

profile
기록이 주는 즐거움

0개의 댓글