AWS (5) ์ธ๋ค์ผํ ๋ฆฌ์คํธํ AWS / ์๋น์ค๋ค ์ ๋ฆฌํ๊ธฐ ์ผ๋จ ์ง๊ธ ์ค์ต์์ ์ฌ์ฉํ๊ฒ S3, CloudFront, IAM๋น์ฉ ์ธก๋ฉด์์ ๊ฑฑ์ ์ด ๋ง์ด ๋๊ธฐ ๋๋ฌธ์ ์๋น์ค๋ค์ ์ ๋ฆฌํ๋๋กํ๋ค... 1. S3๋ฒํท๋ค์ ์๋ ๊ฐ์ฒด๋ฅผ ์ญ์ ํ๊ณ ๊ทธ ํ ๋ฒํท์ ์ญ์ ํ๋ค 2. CloudFront๋จผ์ ๋นํ์ฑํ๋ฅผ ํ ํ, ๋นํ์ฑํ๊ฐ ๋๊ธฐ๊น์ง ์ข ๊ธฐ๋ค๋ ธ๋ค๊ฐ (๋๋ ์ข ์ค๋๊ฑธ๋ ธ๋ค... 5๋ถ์ด์์ ์์ด์ผ๋ ๋ฏ) ์ญ์ ๋ฒํผ์ด ํ๋์ ํ ๋๋ฆฌ๋ก ํ์ฑํ๋๋ฉด ์ญ์ ํ๋ค! 3. IAM๋นํ์ฑํ๋ ๋ฐ๋ก ๋ ์ ๊ฑฐํด์ค๊ฑด ์๊ณ ๋ณด์์ ์ํด ์์ฐ๋ฉด ๋ฐ๋ก๋ฐ๋ก ์ญ์ ํด์ฃผ๊ธฐ *๋น์ฉ ํ์ธํ๊ธฐ์๋จ๋ฐ ์ฐ์ธก์ ๋ด ์ด๋ฆ ํด๋ฆญ - ์ผ์ชฝ ์ฌ์ด๋๋ฐ์ ์ฒญ๊ตฌ์ ํด๋ฆญ ํน์ ์ฐ์ธก ํ๋จ์์๋ '์ฒญ๊ตฌ์ ๋ณด๊ธฐ'ํด๋ฆญ AWS / CI/CD CI/CDContinuous Integration, Continuous Developmentํ ์คํธ, ํตํฉ, ๋ฐฐํฌ์ ๊ณผ์ ์ ์๋ํํ๋ ๊ฒ์ ์๋ฏธ ์ฝ๋๋ฅผ ์ ๋ฐ์ดํธ / ์ถ๊ฐ ์์ฑ ํ ์ปค๋ฐ, ๋ธ๋์น์ Merge, ๋ฐฐํฌ, s3 ์ฝ๋ ๋ณ๊ฒฝ, ๋ฌดํจํ ๋ฑ...์ ๋ฒ๊ฑฐ๋ก์ด ๊ณผ์ ์ ์๋ํ์ํจ๋ค. => ์ฝ๋์๋ง ์ง์คํ ์ ์์! CI/CD ๊ตฌ์ถ ํด ์ข ๋ฅGithub ActionsJenkinsCircle CITravis CI Jenkins ์์ฒด๋ ๋ง์ด ์ฐ์ด์ง๋ง, ๋ณ๋ ์๋ฒ์ ๊ตฌ์ถ์ ํด์ผํ๋ค๋ ๋จ์ ์ด ์๋ค.๋ฐ๋ฉด Github Actions๋ ๋ณ๋์ ์๋ฒ ๊ตฌ์ถ ์์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์์ด์ ๋น์ฉ์ ์ธ ์ธก๋ฉด์ผ๋ก๋ ์๋ฒ ์ ํ ์ด ํ์์๋ค Github Actions๊นํ๋ธ์์ ๊ณต์์ ์ผ๋ก ์ ๊ณตํ๋ CI/CD ํด๋ก, ๋น๋-ํ ์คํธ-๋ฐฐํฌ ๋ก์ง.. AWS / ๋๋ฉ์ธ, HTTPS ์ค์ ๋๋ฉ์ธ(Domain)ํน์ ์ปดํจํฐ๋ฅผ ๊ฐ๋ฆฌํค๋ ์ฃผ์์ ์ญํ DNS(Domain Name System)๋ฌธ์๋ฅผ IP ์ฃผ์๋ก ๋ฐ๊ฟ์ฃผ๋ ์์คํ IP์ฃผ์๋ ์ซ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ด ๋ณต์กํจ=> ์ฌ๋์ด ์ฝ์ ์ ์๋ ๋๋ฉ์ธ ์ด๋ฆ(์: www.amazon.com )์ ๋จธ์ ์ด ์ฝ์ ์ ์๋ IP ์ฃผ์(์: 192.0.2.44)๋ก ๋ณํ => ๋๋ฉ์ธ ์ด๋ฆ์ ์ ๋ ฅํด๋ ์ํ๋ ์น์ฌ์ดํธ ์ด๋์ด ๊ฐ๋ฅ Route53 ๋๋ฉ์ธ์ ๋ฐ๊ธํ๊ณ ๊ด๋ฆฌํด์ฃผ๋ AWS์ DNS ์๋น์ค (์ ๋ฃ)๊ทธ ์ธ์๋ ๊ฐ๋น์, ํ์ด์ฆ ๋ฑ์์๋ ๋๋ฉ์ธ์ ๊ตฌ๋งคํ ์ ์๋ ์๋น์ค๊ฐ ์๋ค ์ค์ต Route53์ ์ ๋ฃ๋ผ์ ๋ด๋๋ฉ์ธํ๊ตญ ์ฌ์ดํธ๋ฅผ ์ด์ฉํด๋ณผ ๊ฒ์ด๋ค.๋ก๊ทธ์ธ์ ํด์ผ ์ด์ฉํ ์ ์์ด์ ํ์๊ฐ์ ์ ํด์ผํ๋ค .. 1) ๋๋ฉ์ธ ์์ฑ๋ก๊ทธ์ธ๊น์ง ํ์ผ๋ฉด ์ด์ ๋ด๊ฐ ๋ฑ๋กํ๊ณ .. AWS / S3, Cloudfront๋ฅผ ํ์ฉํด ๋ฐฐํฌํ๊ธฐ Vite๋ก ํ๋ก์ ํธ ๋ฐฐํฌ 1. Vite๋ก ํ๋ก์ ํธ ์์ฑnpm create vite@latest 250527-vite -- --template react 2. ๋น๋ํ๊ธฐnpm run build ๋น๋ํด ์์ฑ๋ dist ํด๋๋ฅผ ๊ฐ์ฒด๋ก ์ ๋ก๋ํ ๊ฒ์ด๋ค 3. ๋ฒํท ์ ๋ก๋๊ธฐ์กด ๊ฐ์ฒด๋ ์ญ์ ํ๊ณ dist ํด๋ ๋ด ํ์ผ๋ค์ ๋๋๊ทธํด ์ ๋ก๋ํ๋ค. ์ ๋ก๋ ํ ์์ฑํญ์ ๋งจ ์๋ ์น์ฌ์ดํธ ์๋ํฌ์ธํธ๋ก ๋ค์ด๊ฐ๋ณด๋ฉด ๋ฐ๋ ํ์ผ๋ค๋ก ์ ๋ฐฐํฌ๋์ด์๋ ๊ฒ์ ํ์ธํ ์ ์๋ค! Next ํ๋ก์ ํธ ๋ฐฐํฌ1. ํ๋ก์ ํธ ์์ฑnpx create-next-app@latest ์ดํ ๋์ค๋ prompt๋ ๋ญ ํ๋ก์ ํธ๋ฅผ ๊ตฌํํ๊ณ ์ ํ๋๊ฒ ์๋๊ธฐ ๋๋ฌธ์ ๊ทธ๋ฅ ๊ธฐ๋ณธ์ค์ ๋๋ก ์ฒดํฌํ๊ณ ๋์ด๊ฐ๋ค 2. ๋น๋ํ๊ธฐNextJS์ ์ ์ , ๋์ ๋ ๊ฐ์ง ๋ฐฉ์์ผ๋ก ์นํ์ด์ง.. AWS / ๊ธฐ์ด ๋ฐฐํฌํน์ IP๋ ๋๋ฉ์ธ ๊ฐ์ ๊ณ ์ ์ ์ฃผ์๋ฅผ ๋ถ์ฌ๋ฐ์ ๋ค๋ฅธ ์ปดํจํฐ์์๋ ๊ทธ ์ฃผ์๋ก ์ ์ํ ์ ์์๋ค๋ฅธ ์ฌ์ฉ์๋ค์ด ์ธํฐ๋ท์ ํตํด ์ฌ์ฉํ ์ ์๊ฒ ๋ง๋๋ ๊ฒ AWSAmazon Web Services, ์๋ง์กด์ ํด๋ผ์ฐ๋ ์ปดํจํ ์๋น์ค S3AWS์ ๋ฐ์ดํฐ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ ์๋น์คํ์ผ ์ ์ฅ ๋ฐ ๋ค์ด๋ก๋ : ๊ตฌ๊ธ ๋๋ผ์ด๋ธ, icloud์ ๊ฐ์ ์๋น์ค์ ๋น์ทํจ์น ํธ์คํ ๊ธฐ๋ฅ : s3๋ฅผ ํตํด์ ์นํ์ด์ง๋ฅผ ๋ฐฐํฌํ ์ ์์์๋ฒ๋ก๋ถํฐ html, css, js ์ด๋ฏธ์ง ํ์ผ ๋ฑ์ ๋ค์ด๋ก๋ํด์ผ ํ๊ธฐ ๋๋ฌธ์ s3์ ์ด์ฉ ๋ฒํทs3์ ๋ชจ๋ ๊ฐ์ฒด๋ ๋ฒํท์ ์ ์ฅ๋จs3์์๋ ์ฌ๋ฌ ๊ฐ์ ์ ์ฅ์๋ฅผ ๋ง๋ค ์ ์์ ⇒ ๊ทธ์ค ํ๋์ ์ ์ฅ์๋ฅผ ๋ฒํท์ด๋ผ๊ณ ํจ* ๊ฐ์ฒด : s3์ ๋ฒํท์ ์ ๋ก๋๋ ํ์ผ์ ์๋ฏธ ์ค์ตS3์์ ๋ฒํท ์ ํ ๋ฐ ๋ฒํท์ ์ ๋ก๋ํ๋ ๊ฐ.. ์ด์ 1 ๋ค์