---
# System prepended metadata

title: NYUST GDSC 雲端運算讀書會 0507
tags: [雲端運算]

---

# NYUST GDSC 雲端運算讀書會 0507 S3 練習

---

## 首先你需要一個 ~~AWS 帳號~~ 跟 **$$信用卡**

對

---

## 新增 S3

```shell=
aws s3 mb BUCKET_NAME
```

## 下載專案到 Console 家目錄

```git=
git clone https://github.com/jackey8616/PyFun-Frontend.git
```

## 搬運專案到 S3

AWS CLI 方法
```shell=
aws s3 mv . s3://BUCKET_NAME -r
```
- -r 是指遞迴 資料夾注意

- [S3 指令](https://docs.aws.amazon.com/zh_tw/cli/latest/userguide/cli-services-s3-commands.html)

這麼一來 S3 根目錄都有專案的內容了

## S3 權限設定 Permissions

### WAF 防火牆

Disable

### Bucket Policy

```json
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AddPublicReadCannedAcl",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:*",
            "Resource": "arn:aws:s3:::nyust-gdsc-test1/*"
        }
    ]
}
```

- Version 版本
- Statement 各種聲明(細項)
	- Sid 就是 ACL 名稱
	- Effect 啟用/關閉
	- Principal 規則 裡面可以放各種規則(存取規則)
	- Actions 可進行的動作 (開放存取 GetObject 等等)
	- Resource 來源 控制的資源

## S3 屬性設置 Properties 

Static website hosting 打開

接下來會拿到一組 URL 就可以看到網站了

---

## CloudFront 

### 新增發布 Create Distribution

案下去就對了

### Origin domain 來源網址

選擇剛剛建立好的 S3

### Web Application Firewall (WAF) 

關閉 Disable

### Create 

按下橘橘的按鈕 Create Distribution 就完成了

### 設定成靜態網站版本

編輯 CloudFront Origin  > 選擇一開始的 S3 > 按下 Use website endpoint 按鈕

![image](https://hackmd.io/_uploads/HyUMnowGR.png)

就結束了


nyust-gdsc-test1.s3.ap-northeast-1.amazonaws.com

nyust-gdsc-test1.s3-website-ap-northeast-1.amazonaws.com