์ด๋ฏธ์ง ๊ฐค๋ฌ๋ฆฌ ์ ํ๋ฆฌ์ผ์ด์
์ AWS์ ๋ฐฐํฌํ๋ ์ ์ฒด ๊ณผ์ ์ ๋ด์์ต๋๋ค.
์ค์ ์๋น์ค์ฒ๋ผ ๋ฐฑ์๋ API ์๋ฒ์ ํ๋ก ํธ์๋ ์น์ ๋ถ๋ฆฌํ์ฌ ๋ฐฐํฌํฉ๋๋ค.
์ฌ์ฉ์๊ฐ ์น์ฌ์ดํธ์ ์ ์ํ๋ ํ๋ฆ:
[์ฌ์ฉ์ ๋ธ๋ผ์ฐ์ ] โ [Route 53 DNS]
โ
web.theo-test.com ์
๋ ฅ ์
โ
[CloudFront CDN]
โ
[S3 ์ ์ ์น ํธ์คํ
]
(React ์ฑ)
โ
API ํธ์ถ (api.theo-test.com)
โ
[ELB + HTTPS]
โ
[EC2 ์๋ฒ]
โโ [RDS MySQL] (๋ฐ์ดํฐ ์ ์ฅ)
โโ [S3 ๋ฒํท] (์ด๋ฏธ์ง ์ ์ฅ)
๋ฐฑ์๋๋ API ์๋ฒ๋ก, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ์ผ ์ ์ฅ์๋ฅผ ๊ด๋ฆฌํฉ๋๋ค.
๐ก RDS๋? AWS๊ฐ ๊ด๋ฆฌํด์ฃผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋น์ค์ ๋๋ค.
์ง์ DB๋ฅผ ์ค์น/๊ด๋ฆฌํ ํ์ ์์ด ํด๋ฆญ ๋ช ๋ฒ์ผ๋ก ์์ฑ ๊ฐ๋ฅํฉ๋๋ค.
# AWS ์ฝ์์์ RDS ์๋น์ค ์ ์
1. "๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ" ํด๋ฆญ
2. ์์ง ์ต์
: MySQL 8.0.35
3. ํ
ํ๋ฆฟ: ํ๋ฆฌ ํฐ์ด (๋ฌด๋ฃ)
4. ์ค์ :
- DB ์ธ์คํด์ค ์๋ณ์: theo-db (DB ์๋ฒ ์ด๋ฆ)
- ๋ง์คํฐ ์ฌ์ฉ์ ์ด๋ฆ: admin
- ๋ง์คํฐ ์ํธ: ๋ณต์กํ๊ฒ ์ค์ ํ ๋ฉ๋ชจ!
5. ์ธ์คํด์ค ๊ตฌ์ฑ: db.t3.micro (ํ๋ฆฌํฐ์ด)
6. ์คํ ๋ฆฌ์ง: 20GB
7. ์ฐ๊ฒฐ:
- VPC: ๊ธฐ๋ณธ๊ฐ
- ํผ๋ธ๋ฆญ ์ก์ธ์ค: ์ (EC2์์ ์ ๊ทผ ๊ฐ๋ฅํ๋๋ก)
8. ์ถ๊ฐ ๊ตฌ์ฑ:
- ์ด๊ธฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ: theo_db
- DB ํ๋ผ๋ฏธํฐ ๊ทธ๋ฃน: ์๋์์ ์์ฑ
# ํ๋ผ๋ฏธํฐ ๊ทธ๋ฃน = DB ์ค์ ํ์ผ
1. RDS โ ํ๋ผ๋ฏธํฐ ๊ทธ๋ฃน โ "ํ๋ผ๋ฏธํฐ ๊ทธ๋ฃน ์์ฑ"
2. ํจ๋ฐ๋ฆฌ: mysql8.0 ์ ํ
3. ๊ทธ๋ฃน ์ด๋ฆ: mysql-utf8mb4
# ํ๊ธ๊ณผ ์ด๋ชจ์ง๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ์ค์
4. ์์ฑ ํ ํธ์ง โ ๋ค์ ๊ฐ๋ค ๊ฒ์ํด์ ๋ณ๊ฒฝ:
- character_set ์์ํ๋ ๋ชจ๋ ํญ๋ชฉ โ utf8mb4
- collation ์์ํ๋ ํญ๋ชฉ โ utf8mb4_unicode_ci
- time_zone โ Asia/Seoul
5. RDS ์ธ์คํด์ค์ ํ๋ผ๋ฏธํฐ ๊ทธ๋ฃน ์ ์ฉ
# ๋ณด์ ๊ทธ๋ฃน = ๋ฐฉํ๋ฒฝ ๊ท์น
์ธ๋ฐ์ด๋ ๊ท์น (๋ค์ด์ค๋ ํธ๋ํฝ):
- Type: MySQL/Aurora
- Port: 3306
- Source: EC2 ๋ณด์ ๊ทธ๋ฃน ID (๋์ค์ EC2 ์์ฑ ํ ์ถ๊ฐ)
โ "EC2 ์๋ฒ๋ง DB์ ์ ์ ๊ฐ๋ฅ"ํ๋๋ก ์ค์
// Express ์๋ฒ์์ RDS ์ฐ๊ฒฐํ๋ ์ฝ๋
export const AppDataSource = new DataSource({
type: "mysql",
host: process.env.DATABASE_HOST, // RDS ์๋ํฌ์ธํธ ์ฃผ์
port: 3306,
username: process.env.DATABASE_USERNAME,
password: process.env.DATABASE_PASSWORD,
database: process.env.DATABASE_NAME,
synchronize: true, // ๊ฐ๋ฐ ํ๊ฒฝ์ฉ (์๋ ํ
์ด๋ธ ์์ฑ)
});
๐ก EC2๋? AWS์ ๊ฐ์ ์ปดํจํฐ์ ๋๋ค.
์ฐ๋ฆฌ์ Express ์๋ฒ ์ฝ๋๊ฐ ์คํ๋ ๋ฆฌ๋ ์ค ์ปดํจํฐ๋ฅผ ๋น๋ฆฌ๋ ๊ฒ์ ๋๋ค.
1. EC2 ์๋น์ค โ "์ธ์คํด์ค ์์"
2. ์ค์ :
- ์ด๋ฆ: theo-server
- OS ์ ํ: Ubuntu 22.04 LTS
- ์ธ์คํด์ค ์ ํ: t2.micro (ํ๋ฆฌํฐ์ด)
3. ํค ํ์ด ์์ฑ:
- ์ด๋ฆ: theo-key
- .pem ํ์ผ ๋ค์ด๋ก๋ (SSH ์ ์์ฉ, ์์ด๋ฒ๋ฆฌ๋ฉด ์ฌ๋ฐ๊ธ ๋ถ๊ฐ!)
4. ๋คํธ์ํฌ ์ค์ :
- ํผ๋ธ๋ฆญ IP ์๋ ํ ๋น: ํ์ฑํ
5. ๋ณด์ ๊ทธ๋ฃน (๋ฐฉํ๋ฒฝ):
- SSH (22๋ฒ ํฌํธ): ๋ด IP๋ง ํ์ฉ
- HTTP (80๋ฒ ํฌํธ): ๋ชจ๋ IP ํ์ฉ (์น ์๋น์ค์ฉ)
# 1. SSH๋ก EC2 ์ ์ (ํฐ๋ฏธ๋์์)
chmod 400 theo-key.pem # ํค ํ์ผ ๊ถํ ์ค์
ssh -i theo-key.pem ubuntu@[EC2 ํผ๋ธ๋ฆญ IP]
# 2. Node.js 20 ๋ฒ์ ์ค์น (Ubuntu ์ ์ฉ ๋ช
๋ น์ด)
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
# 3. PM2 ์ค์น (Node.js ํ๋ก์ธ์ค ๊ด๋ฆฌ ๋๊ตฌ)
sudo npm install -g pm2
# 4. Git ์ค์น ๋ฐ ํ๋ก์ ํธ ํด๋ก
sudo apt install git
git clone [์ฌ๋ฌ๋ถ์ GitHub ์ ์ฅ์ URL]
cd [ํ๋ก์ ํธ ํด๋]/api-server
# 5. ํจํค์ง ์ค์น ๋ฐ ๋น๋
npm install
npm run build
# vi ์๋ํฐ๋ก .env ํ์ผ ์์ฑ
vi .env
# ์๋ ๋ด์ฉ ์
๋ ฅ (i ํค ๋๋ฅด๊ณ ์
๋ ฅ, :wq๋ก ์ ์ฅ)
AWS_ACCESS_KEY=AKIA๋ก ์์ํ๋ ํค
AWS_SECRET_ACCESS_KEY=๋ฐ๊ธ๋ฐ์ ์ํฌ๋ฆฟ ํค
AWS_S3_BUCKET=theo-image-storage
DATABASE_HOST=RDS ์๋ํฌ์ธํธ ์ฃผ์.rds.amazonaws.com
DATABASE_NAME=theo_db
DATABASE_USERNAME=admin
DATABASE_PASSWORD=RDS ์์ฑ์ ์ค์ ํ ๋น๋ฐ๋ฒํธ
# ์๋ฒ ์์ (๋ฐฑ๊ทธ๋ผ์ด๋ ์คํ)
sudo pm2 start dist/app.js --name "api-server"
# ์๋ฒ ์ํ ํ์ธ
sudo pm2 status
# ๋ก๊ทธ ๋ณด๊ธฐ
sudo pm2 logs api-server
# ์๋ฒ ์ฌ์์ ์์๋ ์๋ ์คํ ์ค์
sudo pm2 startup
sudo pm2 save
๐ก IAM์ด๋? AWS ์๋น์ค์ ์ ๊ทผํ ์ ์๋ ๊ถํ์ ๊ด๋ฆฌํ๋ ์๋น์ค์ ๋๋ค.
EC2 ์๋ฒ๊ฐ S3์ ํ์ผ์ ์ ๋ก๋ํ๋ ค๋ฉด ๊ถํ(์ก์ธ์ค ํค)์ด ํ์ํฉ๋๋ค.
# IAM ์ฌ์ฉ์ ์์ฑ
1. IAM ์๋น์ค โ ์ฌ์ฉ์ โ "์ฌ์ฉ์ ์์ฑ"
2. ์ฌ์ฉ์ ์ด๋ฆ: s3-upload-user
3. ๊ถํ: AmazonS3FullAccess ์ ์ฑ
์ ํ
# ์ก์ธ์ค ํค ๋ฐ๊ธ (์ค์!)
1. ์์ฑํ ์ฌ์ฉ์ ํด๋ฆญ โ "๋ณด์ ์๊ฒฉ ์ฆ๋ช
" ํญ
2. "์ก์ธ์ค ํค ๋ง๋ค๊ธฐ" ํด๋ฆญ
3. ์ฉ๋: "AWS ์ธ๋ถ์์ ์คํ๋๋ ์ ํ๋ฆฌ์ผ์ด์
"
4. ์ก์ธ์ค ํค์ ์ํฌ๋ฆฟ ํค ๋ณต์ฌ (ํ ๋ฒ๋ง ๋ณด์ฌ์ง!)
โ .env ํ์ผ์ ์ถ๊ฐ
๐ก S3๋? AWS์ ํ์ผ ์ ์ฅ ์๋น์ค์ ๋๋ค.
์ ๋ก๋๋ ์ด๋ฏธ์ง๋ค์ ์ ์ฅํ๋ ์ฐฝ๊ณ ์ญํ ์ ํฉ๋๋ค.
1. S3 ์๋น์ค โ "๋ฒํท ๋ง๋ค๊ธฐ"
2. ๋ฒํท ์ด๋ฆ: theo-image-storage (์ ์ธ๊ณ ์ ์ผํด์ผ ํจ)
3. ๋ฆฌ์ : ap-northeast-2 (์์ธ)
4. ํผ๋ธ๋ฆญ ์ก์ธ์ค ์ฐจ๋จ ํด์ (์ด๋ฏธ์ง ๊ณต๊ฐ ์ ๊ทผ์ฉ)
# ๋ฒํท ์ ์ฑ
์ถ๊ฐ (์ด๋ฏธ์ง๋ฅผ ์น์์ ๋ณผ ์ ์๋๋ก)
5. ๋ฒํท ์ ํ โ ๊ถํ ํญ โ ๋ฒํท ์ ์ฑ
ํธ์ง
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::theo-image-storage/*"
}
]
}
๐ก ELB๋? Elastic Load Balancer์ ์ฝ์๋ก, ํธ๋ํฝ์ ๋ถ์ฐ์ํค๊ณ
HTTPS(๋ณด์ ์ฐ๊ฒฐ)๋ฅผ ์ ์ฉํ๋ ์๋น์ค์ ๋๋ค.
1. Certificate Manager ์๋น์ค ์ ์
2. "์ธ์ฆ์ ์์ฒญ" โ ํผ๋ธ๋ฆญ ์ธ์ฆ์
3. ๋๋ฉ์ธ ์ด๋ฆ: api.theo-test.com
4. ๊ฒ์ฆ ๋ฐฉ๋ฒ: DNS ๊ฒ์ฆ
5. Route 53์์ CNAME ๋ ์ฝ๋ ์์ฑ (์๋)
6. ๋ฐ๊ธ ์๋ฃ๊น์ง ๋๊ธฐ (10-30๋ถ)
1. EC2 โ ๋ก๋ ๋ฐธ๋ฐ์ โ "๋ก๋ ๋ฐธ๋ฐ์ ์์ฑ"
2. Application Load Balancer ์ ํ
3. ์ค์ :
- ์ด๋ฆ: theo-elb
- ์ฒด๊ณ: ์ธํฐ๋ท ๊ฒฝ๊ณ (์ธ๋ถ ์ ๊ทผ์ฉ)
- ๊ฐ์ฉ ์์ญ: 2๊ฐ ์ด์ ์ ํ (ํ์)
4. ๋ณด์ ๊ทธ๋ฃน ์์ฑ:
- HTTP (80) - ๋ชจ๋ IP
- HTTPS (443) - ๋ชจ๋ IP
# ๋์ ๊ทธ๋ฃน = ELB๊ฐ ํธ๋ํฝ์ ๋ณด๋ผ EC2 ์ธ์คํด์ค ๋ชฉ๋ก
1. ๋์ ์ ํ: ์ธ์คํด์ค
2. ๋์ ๊ทธ๋ฃน ์ด๋ฆ: theo-api-tg
3. ํ๋กํ ์ฝ: HTTP, ํฌํธ: 80
4. ์ํ ๊ฒ์ฌ ๊ฒฝ๋ก: / (์๋ฒ ํฌ์ค์ฒดํฌ์ฉ)
5. EC2 ์ธ์คํด์ค ๋ฑ๋ก
# HTTPS ๋ฆฌ์ค๋ (443 ํฌํธ)
- ํ๋กํ ์ฝ: HTTPS
- ์ธ์ฆ์: ACM์์ ๋ฐ๊ธ๋ฐ์ ์ธ์ฆ์ ์ ํ
- ๊ธฐ๋ณธ ๋์: theo-api-tg๋ก ์ ๋ฌ
# HTTP ๋ฆฌ์ค๋ (80 ํฌํธ)
- HTTPS๋ก ๋ฆฌ๋ค์ด๋ ํธ (์๋์ผ๋ก HTTPS ์ฌ์ฉ)
๐ก Route 53์ด๋? AWS์ DNS ์๋น์ค์ ๋๋ค.
api.theo-test.com ๊ฐ์ ๋๋ฉ์ธ์ ELB์ ์ฐ๊ฒฐํด์ค๋๋ค.
1. Route 53 โ ํธ์คํ
์์ญ โ theo-test.com
2. "๋ ์ฝ๋ ์์ฑ"
3. ์ค์ :
- ๋ ์ฝ๋ ์ด๋ฆ: api (โ api.theo-test.com์ด ๋จ)
- ๋ ์ฝ๋ ์ ํ: A
- ๋ณ์นญ: ์ผ๊ธฐ
- ๋ณ์นญ ๋์: ELB ์ ํ (theo-elb)
4. "๋ ์ฝ๋ ์์ฑ"
โ ์ด์ https://api.theo-test.com์ผ๋ก ์ ์ ๊ฐ๋ฅ!
React ์ฑ์ ๋น๋ํ์ฌ S3์ ์ ๋ก๋ํ๊ณ , CloudFront๋ก ์ ์ธ๊ณ์ ๋น ๋ฅด๊ฒ ์ ๊ณตํฉ๋๋ค.
# ๋ก์ปฌ ์ปดํจํฐ์์ ์คํ
cd web-client
# ํ๋ก๋์
ํ๊ฒฝ๋ณ์ ์ค์
echo "VITE_API_URL=https://api.theo-test.com" > .env.production
# ๋น๋ (์ต์ ํ๋ ์ ์ ํ์ผ ์์ฑ)
npm run build
# dist ํด๋์ HTML, CSS, JS ํ์ผ ์์ฑ๋จ
1. S3 โ "๋ฒํท ๋ง๋ค๊ธฐ"
2. ๋ฒํท ์ด๋ฆ: theo-web-client
3. ํผ๋ธ๋ฆญ ์ก์ธ์ค ์ฐจ๋จ: ๋ชจ๋ ํด์
1. ๋ฒํท โ ์์ฑ ํญ โ ์ ์ ์น์ฌ์ดํธ ํธ์คํ
2. ํ์ฑํ
3. ์ธ๋ฑ์ค ๋ฌธ์: index.html
4. ์ค๋ฅ ๋ฌธ์: index.html (React Router ์ง์)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::theo-web-client/*"
}
]
}
# S3 ์ฝ์์์
1. theo-web-client ๋ฒํท ์ด๊ธฐ
2. "์
๋ก๋" ํด๋ฆญ
3. dist ํด๋ ๋ด์ ๋ชจ๋ ํ์ผ ๋๋๊ทธ ์ค ๋๋กญ
4. "์
๋ก๋"
# ์ด์ S3 ์๋ํฌ์ธํธ๋ก ์ ์ ๊ฐ๋ฅ
# http://theo-web-client.s3-website.ap-northeast-2.amazonaws.com
๐ก CloudFront๋? ์ ์ธ๊ณ ์ฃ์ง ์๋ฒ์ ์ฝํ ์ธ ๋ฅผ ์บ์ฑํ์ฌ
๋น ๋ฅธ ๋ก๋ฉ ์๋๋ฅผ ์ ๊ณตํ๋ CDN ์๋น์ค์ ๋๋ค.
โ ๏ธ ์ค์: CloudFront์ฉ ์ธ์ฆ์๋ ๋ฐ๋์ us-east-1 ๋ฆฌ์ ์์ ์์ฑ!
1. ๋ฆฌ์ ์ "๋ฏธ๊ตญ ๋๋ถ(๋ฒ์ง๋์ ๋ถ๋ถ)"๋ก ๋ณ๊ฒฝ
2. Certificate Manager โ "์ธ์ฆ์ ์์ฒญ"
3. ๋๋ฉ์ธ: web.theo-test.com
4. DNS ๊ฒ์ฆ โ Route 53 CNAME ์๋ ์์ฑ
1. CloudFront โ "๋ฐฐํฌ ์์ฑ"
2. ์๋ณธ ์ค์ :
- ์๋ณธ ๋๋ฉ์ธ: S3 ์ ์ ์น ํธ์คํ
์๋ํฌ์ธํธ
(theo-web-client.s3-website.ap-northeast-2.amazonaws.com)
โ ๏ธ ๋๋กญ๋ค์ด ๋ชฉ๋ก์ด ์๋ ์ง์ ์
๋ ฅ!
3. ๊ธฐ๋ณธ ์บ์ ๋์:
- ๋ทฐ์ด ํ๋กํ ์ฝ: Redirect HTTP to HTTPS
4. ์ค์ :
- ๋์ฒด ๋๋ฉ์ธ(CNAME): web.theo-test.com
- SSL ์ธ์ฆ์: ์์์ ์์ฑํ ์ธ์ฆ์ ์ ํ
- ๊ธฐ๋ณธ ๋ฃจํธ ๊ฐ์ฒด: index.html
5. ์ค๋ฅ ํ์ด์ง (React SPA ์ง์):
- 404 ์๋ฌ โ /index.html ๋ฐํ (200 ์ํ)
- 403 ์๋ฌ โ /index.html ๋ฐํ (200 ์ํ)
1. Route 53 โ ํธ์คํ
์์ญ โ theo-test.com
2. "๋ ์ฝ๋ ์์ฑ"
3. ์ค์ :
- ๋ ์ฝ๋ ์ด๋ฆ: web
- ๋ ์ฝ๋ ์ ํ: A
- ๋ณ์นญ: ์ผ๊ธฐ
- ๋ณ์นญ ๋์: CloudFront ๋ฐฐํฌ ์ ํ
โ https://web.theo-test.com์ผ๋ก ์ ์ ๊ฐ๋ฅ!
โ
EC2 ๋ณด์ ๊ทธ๋ฃน
- SSH(22): 0.0.0.0/0 (๋ชจ๋ IP)
- HTTP(80): 0.0.0.0/0 (๋ชจ๋ IP)
โ
ELB ๋ณด์ ๊ทธ๋ฃน
- HTTP(80): 0.0.0.0/0 (๋ชจ๋ IP)
- HTTPS(443): 0.0.0.0/0 (๋ชจ๋ IP)
โ
RDS ๋ณด์ ๊ทธ๋ฃน
- MySQL(3306): EC2 ๋ณด์ ๊ทธ๋ฃน ID๋ง
โ ์ธ๋ถ์์๋ ELB๋ฅผ ํตํด์๋ง ์ ๊ทผ ๊ฐ๋ฅ
โ DB๋ EC2์์๋ง ์ ๊ทผ ๊ฐ๋ฅ
1. CloudFront ๋ฐฐํฌ ๋นํ์ฑํ โ ์ญ์
2. ELB ์ญ์
3. EC2 ์ธ์คํด์ค ์ข
๋ฃ
4. RDS ์ญ์ (์ค๋
์ท ์์ฑ ์ฒดํฌ ํด์ !)
5. ํ๋ ฅ์ IP ๋ฆด๋ฆฌ์ฆ โ ๏ธ ๋ฏธ์ฌ์ฉ ์ ์๊ฐ๋น ๊ณผ๊ธ!
6. S3 ๋ฒํท ๋น์ฐ๊ธฐ โ ์ญ์
7. Route 53 ํธ์คํ
์์ญ ์ญ์ (๋๋ฉ์ธ์ ์ ์ง)
โ RDS ๋ณด์ ๊ทธ๋ฃน์ EC2 ๋ณด์ ๊ทธ๋ฃน ID ์ถ๊ฐํ๋์ง ํ์ธ
โ RDS ํผ๋ธ๋ฆญ ์ก์ธ์ค "์"๋ก ์ค์ ํ๋์ง ํ์ธ
โ .env ํ์ผ์ DATABASE_HOST๊ฐ ์ ํํ์ง ํ์ธ
โ RDS ํ๋ผ๋ฏธํฐ ๊ทธ๋ฃน ์ ์ฉํ๋์ง ํ์ธ
โ EC2 ๋ณด์ ๊ทธ๋ฃน์ด ELB ๋ณด์ ๊ทธ๋ฃน ID ํ์ฉํ๋์ง ํ์ธ
โ PM2๋ก ์๋ฒ๊ฐ ์คํ ์ค์ธ์ง ํ์ธ (pm2 status)
โ ๋์ ๊ทธ๋ฃน์ ํฌ์ค์ฒดํฌ ๊ฒฝ๋ก๊ฐ "/" ์ธ์ง ํ์ธ
โ IAM ์ฌ์ฉ์ ์ก์ธ์ค ํค ์ ๋๋ก ๋ณต์ฌํ๋์ง ํ์ธ
โ S3 ๋ฒํท ์ด๋ฆ์ด .env์ ์ผ์นํ๋์ง ํ์ธ
โ S3 ๋ฒํท ํผ๋ธ๋ฆญ ์ก์ธ์ค ์ฐจ๋จ ํด์ ํ๋์ง ํ์ธ
โ S3 ์ ์ ์น ํธ์คํ
์๋ํฌ์ธํธ ์ง์ ์
๋ ฅํ๋์ง ํ์ธ
โ ์ค๋ฅ ํ์ด์ง ์ค์ ์์ /index.html ๋ฐํ ์ค์ ํ๋์ง ํ์ธ
โ S3 ๋ฒํท ์ ์ฑ
์ ๋๋ก ์ค์ ํ๋์ง ํ์ธ
๋ฐฐํฌ๊ฐ ์๋ฃ๋์๋ค๋ฉด ๋ค์์ ํ์ธํ์ธ์
์ด์ ๊ธฐ๋ณธ์ ์ธ AWS ๋ฐฐํฌ๋ฅผ ๋ง์คํฐํ์ต๋๋ค! ๋ค์ ๋จ๊ณ๋ก ๋์๊ฐ๋๋ค.