이 모듈의 아키텍쳐는 HTML, CSS, Javascript, 이미지 및 기타 파일을 포함한 정적 웹 컨텐츠를 S3에 저장하는 것이다.
결과적으로 사용자는 S3에 공개된 웹 사이트 URL을 사용하여 사이트에 액세스 한다. 사이트를 사용할 수 있게 하기 위해서 웹 서버를 실행하거나 다른 서비스를 사용할 필요가 없다.
이 URL은 엔드포인트 URL을 사용하게 된다.
* S3 만들기
1. AWS Management Console에서 Service를 누른다음 S3를 선택한다.
2. Create Bucket을 누른다.
3. 버켓 이름은 전 세계적으로 고유한 이름으로 설정한다.
4. 리전을 선택한다.
5. Create
* 웹 사이트의 컨텐츠 업로드 하기
S3 버킷에다가 드래그 앤 드롭으로 웹사이트 파일들을 올릴 수 있다. 두 번째 방법은 AWS CLI를 사용한 방법이다.
AWS CLI를 다운로드 받아서 aws s3 sync s3://[경로명]//[버켓이름] 다른 s3에 저장된 파일들을 복사할 수 있다.
* IAM 설정
유저를 클릭한다.
Programmatic access에 체크를 해 둔다.
권한은 관리자 권한만 부여한다.
그럼 AccessKey와 Secret 키거나오게 된다. 잃어 버리면 안되므로 저장을 잘 해 놓아야 한다.
아까 CLI에서 권한을 줘 보자.
aws configure을 치면
ACCESS ID와 ACCESS KEY를 아까 설정한 ROLE로 입력을 해준다. 그리고 리전과 OUTPUT을 넣는데 OUTPUT은 비워놓는다. 처리하는 데이터가 json형태여서 json을 쓰는 경우도 있다.
* 버킷 정책에 Public Reads 권한 허용하기
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::YOUR_BUCKET_NAME/*" } ] }
저기 빈 공간에 이 코드를 입력한다. 그리고 SAVE를 한다.
* 웹 사이트 호스팅 활성화
Properties의 정적웹사이트 호스팅을 선택한다.
처음에 use this site to host a website를 체크해주고 초기 화면 파일이름을 설정한다. 물론 해ㅜㅡ당파일이 버킷 안에 존재해야 한다.
s3의 전체적인 모습은 이렇게 생겼다. 여타 배포하는 웹사이트와 형식이 같다.
이제 아까 Properties의 Static website hosting 에 가보면 EndPoint가 있다. 이 EndPoint가 호스팅된 주소이다.
'프로그래밍 > Amazon' 카테고리의 다른 글
AWS VPC 기본 개념 정리 - VPC를 구성하는 기본 원리 (3) | 2020.04.25 |
---|---|
Dynamo DB 공식 문서 정리 1편 - 핵심 구성 요소 (2) | 2020.04.18 |
[Amazon] 서버리스 백엔드 구축하기 (0) | 2017.06.25 |
[Amazon] Cognito 를 이용한 사용자 인증 (0) | 2017.06.25 |