๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90
๋ฐ˜์‘ํ˜•

์ „์ฒด ๊ธ€84

๋ธ”๋ Œ๋” ๊ธฐ์ดˆ ํŠœํ† ๋ฆฌ์–ผ: ์ดˆ๋ณด ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ 3D ๋””์ž์ธ ์ž…๋ฌธ ๊ฐ€์ด๋“œ ๋งจ๋‚  ๋‚จ์˜ ์—์…‹๋งŒ ๊ฐ€์ ธ๋‹ค ์“ฐ์‹œ๋‚˜์š”? ์ด์ œ ์šฐ๋ฆฌ๊ฐ€ ์ง์ ‘ ๋งŒ๋“ญ์‹œ๋‹คํ”„๋ก ํŠธ์—”๋“œ๋‚˜ ํด๋ผ์ด์–ธํŠธ ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด, ๋ฐ‹๋ฐ‹ํ•œ 2D UI์— ์ƒ๊ธฐ๋ฅผ ๋ถˆ์–ด๋„ฃ๊ธฐ ์œ„ํ•ด 3D ์—์…‹์ด ๊ฐ„์ ˆํ•ด์งˆ ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ† ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋Š”๋ฐ ๋””์ž์ด๋„ˆ๋Š” ์—†๊ณ , ๋ฌด๋ฃŒ ์—์…‹ ์‚ฌ์ดํŠธ๋ฅผ ๋’ค์ ธ๋ด๋„ ๋‚ด ํ”„๋กœ์ ํŠธ ํ†ค์•ค๋งค๋„ˆ์— ๋”ฑ ๋งž๋Š” 3D ์•„์ด์ฝ˜์„ ์ฐพ๊ธฐ๋ž€ ๋ชจ๋ž˜์‚ฌ์žฅ์—์„œ ๋ฐ”๋Š˜ ์ฐพ๊ธฐ์ฃ .์ € ์—ญ์‹œ ์ฃผ๋‹ˆ์–ด ์‹œ์ ˆ, ํฌํŠธํด๋ฆฌ์˜ค ์›น์‚ฌ์ดํŠธ์— ๋“ค์–ด๊ฐˆ '์ž…์ฒด์ ์ธ ์œ ๋ฆฌ ์งˆ๊ฐ์˜ ๋ฒ„ํŠผ' ํ•˜๋‚˜๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด ํ•˜๋ฃจ ์ข…์ผ ๊ตฌ๊ธ€๋ง์„ ํ•˜๋‹ค๊ฐ€ ๊ฒฐ๊ตญ ํฌ๊ธฐํ–ˆ๋˜ ๋ผˆ์•„ํ”ˆ ๊ฒฝํ—˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋•Œ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. "์•„, ์ด๋Ÿด ๋ฐ”์—” ๋‚ด๊ฐ€ ์ง์ ‘ ๋งŒ๋“ค๊ณ  ๋ง์ง€!"์˜ค๋Š˜์€ ์ฝ”๋”ฉ๋งŒ ํ•˜๋˜ ์šฐ๋ฆฌ ๊ฐœ๋ฐœ์ž๋“ค์˜ ๋‡Œ ๊ตฌ์กฐ์— ๋”ฑ ๋งž์ถ˜ ๋ธ”๋ Œ๋” ๊ธฐ์ดˆ ํŠœํ† ๋ฆฌ์–ผ์„ ์ค€๋น„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณต์žกํ•œ ๊ทธ๋ž˜ํ”ฝ ์šฉ์–ด ๋Œ€์‹ , ์šฐ๋ฆฌ๊ฐ€ ๋งค์ผ ๋ณด๋Š” ์ฝ”๋“œ์™€ IDE์—.. 2026. 9. 2.
๋ธ”๋ Œ๋” ํŠœํ† ๋ฆฌ์–ผ ์™„๋ฒฝ ๊ฐ€์ด๋“œ: ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ 3D ๋ชจ๋ธ๋ง๊ณผ ์›น ์ตœ์ ํ™” ์ž…๋ฌธ "์• ํ”Œ ์›น์‚ฌ์ดํŠธ์ฒ˜๋Ÿผ ๋ฉ‹์ง€๊ฒŒ 3D ๊ฐ์ฒด๊ฐ€ ์Šคํฌ๋กค์— ๋งž์ถฐ ๋Œ์•„๊ฐ€๋Š” ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์€๋ฐ... ์“ธ๋งŒํ•œ ๋ฌด๋ฃŒ 3D ์—์…‹ ๊ตฌํ•˜๊ธฐ๊ฐ€ ํ•˜๋Š˜์˜ ๋ณ„ ๋”ฐ๊ธฐ๋„ค์š”."์•ˆ๋…•ํ•˜์„ธ์š”! ํ•ญ์ƒ ์ƒˆ๋กญ๊ณ  ์žฌ๋ฏธ์žˆ๋Š” ์›น ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์ƒํ•˜๋ฉฐ ๋Š์ž„์—†์ด ์•„์ด๋””์–ด๋ฅผ ์Ÿ์•„๋‚ด๋Š” ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.์š”์ฆ˜ ํ”„๋ก ํŠธ์—”๋“œ ํŠธ๋ Œ๋“œ์—์„œ WebGL, Three.js, ๊ทธ๋ฆฌ๊ณ  React Three Fiber(R3F)๋ฅผ ํ™œ์šฉํ•œ 3D ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒ ์›น์˜ ์ธ๊ธฐ๊ฐ€ ๋Œ€๋‹จํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์ˆ  ์Šคํƒ์€ ํŠœํ† ๋ฆฌ์–ผ์„ ๋ณด๋ฉฐ ์–ด์ฐŒ์–ด์ฐŒ ์ตํ˜”๋Š”๋ฐ, ๋ง‰์ƒ ํ™”๋ฉด์— ๋„์šธ '์˜ˆ์œ 3D ๋ชจ๋ธ(์—์…‹)'์ด ์—†์–ด์„œ ์ง„ํ–‰์ด ํ„ฑ ๋ง‰ํžˆ๋Š” ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋ถ„๋“ค์ด ์ •๋ง ๋งŽ์Šต๋‹ˆ๋‹ค. ์—์…‹ ์Šคํ† ์–ด๋ฅผ ๋’ค์ ธ๋ด๋„ ๋‚ด ๊ธฐํš์— ๋”ฑ ๋งž๋Š” ๋ชจ๋ธ์„ ์ฐพ๊ธฐ๋ž€ ์‰ฝ์ง€ ์•Š๊ณ , ์œ ๋ฃŒ๋กœ ๊ตฌ๋งคํ•˜์ž๋‹ˆ ์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ ์˜ˆ์‚ฐ์— ๋ถ€๋‹ด์ด ๋˜์ฃ .๊ทธ๋ž˜์„œ ์˜ค๋Š˜์€ ์ฝ”๋”ฉ๋งŒ ํ•˜๋˜ ๊ฐœ๋ฐœ.. 2026. 9. 1.
AWS Lambda์™€ API Gateway ์„œ๋ฒ„๋ฆฌ์Šค ์™„๋ฒฝ ๊ฐ€์ด๋“œ: ์„œ๋ฒ„ ์—†์ด ๋ฐฑ์—”๋“œ ๊ตฌ์ถ•ํ•˜๊ธฐ "์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ์— ๋ฐฑ์—”๋“œ๊ฐ€ ํ•„์š”ํ•ด์„œ AWS EC2๋ฅผ ๋„์› ๋Š”๋ฐ, ์•„๋ฌด๋„ ์ ‘์† ์•ˆ ํ•˜๋Š” ์ƒˆ๋ฒฝ์—๋„ ๋งค๋‹ฌ 2๋งŒ ์›์”ฉ ์š”๊ธˆ์ด ๋‚˜๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฑฐ ์ •์ƒ์ธ๊ฐ€์š”?"์•ˆ๋…•ํ•˜์„ธ์š”! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์š”๊ธˆ ๋‹ค์ด์–ดํŠธ์™€ ํšจ์œจ์ ์ธ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„์— ์ง„์‹ฌ์ธ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž๋‚˜ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•  ๋•Œ ๊ฐ€์žฅ ํฐ ์žฅ๋ฒฝ์€ '๋ฐฑ์—”๋“œ ์„œ๋ฒ„ ์œ ์ง€๋น„'์ž…๋‹ˆ๋‹ค. 24์‹œ๊ฐ„ ๋‚ด๋‚ด ์ผœ๋‘์–ด์•ผ ํ•˜๋Š” ๊ธฐ์กด์˜ ์„œ๋ฒ„ ํ˜ธ์ŠคํŒ…(EC2 ๋“ฑ) ๋ฐฉ์‹์€ ํŠธ๋ž˜ํ”ฝ์ด ์—†๋Š” ์‹œ๊ฐ„๋Œ€์—๋„ ๋ถˆํ•„์š”ํ•œ ๋น„์šฉ์„ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.์ด๋Ÿฌํ•œ ์š”๊ธˆ ํญํƒ„์˜ ๊ณตํฌ์™€ ์„œ๋ฒ„ ๊ด€๋ฆฌ์˜ ๋ณต์žกํ•จ์„ ํ•œ ๋ฒˆ์— ํ•ด๊ฒฐํ•ด ์ฃผ๋Š” ํ˜„๋Œ€ ํด๋ผ์šฐ๋“œ์˜ ๋งˆ๋ฒ•์ด ๋ฐ”๋กœ '์„œ๋ฒ„๋ฆฌ์Šค(Serverless)'์ž…๋‹ˆ๋‹ค. ๊ทธ์ค‘์—์„œ๋„ ๊ฐ€์žฅ ๋Œ€์ค‘์ ์ด๊ณ  ๊ฐ•๋ ฅํ•œ ์กฐํ•ฉ์ธ AWS Lambda์™€ API Gateway๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ์ฝ”.. 2026. 9. 1.
AWS S3 CloudFront ๋ฐฐํฌ ์™„๋ฒฝ ๊ฐ€์ด๋“œ: Route 53 ์ปค์Šคํ…€ ๋„๋ฉ”์ธ ๋ฐ ACM ๋ฌด๋ฃŒ HTTPS ์—ฐ๊ฒฐ "S3๋ž‘ CloudFront๋ฅผ ์—ฐ๊ฒฐํ•ด์„œ ๋ฐฐํฌํ•˜๊ธด ํ–ˆ๋Š”๋ฐ... ์ฃผ์†Œ๊ฐ€ d1x2y3z4.cloudfront.net ์ด๋ผ์„œ ํฌํŠธํด๋ฆฌ์˜ค๋กœ ์ œ์ถœํ•˜๊ธฐ๊ฐ€ ์ข€ ๋ฏผ๋งํ•˜๋„ค์š”. ์–ด๋–ป๊ฒŒ ์ œ ์ด๋ฆ„์ด ๋“ค์–ด๊ฐ„ .com ๋„๋ฉ”์ธ์œผ๋กœ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‚˜์š”?"์•ˆ๋…•ํ•˜์„ธ์š”! ํ”„๋ก ํŠธ์—”๋“œ์™€ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์˜ ๊ฒฝ๊ณ„๋ฅผ ๋„˜๋‚˜๋“ค๋ฉฐ ์ฆ๊ฒ๊ฒŒ ์ฝ”๋”ฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.์ด์ „ ํฌ์ŠคํŒ…์—์„œ ์šฐ๋ฆฌ๋Š” AWS S3์™€ CloudFront๋ฅผ ๊ฒฐํ•ฉํ•ด ๋น ๋ฅด๊ณ  ์•ˆ์ „ํ•˜๊ฒŒ React/Vue ๊ธฐ๋ฐ˜์˜ ์ •์  ์›น์‚ฌ์ดํŠธ๋ฅผ ๋„์šฐ๋Š” ๋ฒ•์„ ์•Œ์•„๋ณด์•˜์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฐฐํฌ ์งํ›„์— ์ฃผ์–ด์ง€๋Š” ๊ธธ๊ณ  ๋ณต์žกํ•œ CloudFront ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์œผ๋กœ๋Š” ์‹ค์ œ ์œ ์ €๋ฅผ ๋ชจ์œผ๊ฑฐ๋‚˜ ๋ฒˆ๋“ฏํ•œ ํฌํŠธํด๋ฆฌ์˜ค๋กœ ํ™œ์šฉํ•˜๊ธฐ์— ์•„์‰ฌ์›€์ด ๋‚จ์Šต๋‹ˆ๋‹ค.์ง„์ •ํ•œ ์ƒ์šฉ ์„œ๋น„์Šค์˜ ์™„์„ฑ์€ ์‚ฌ์šฉ์ž๊ฐ€ ๊ธฐ์–ตํ•˜๊ธฐ ์‰ฌ์šด ์ปค์Šคํ…€ ๋„๋ฉ”์ธ(์˜ˆ: my-portfolio.com)์„.. 2026. 9. 1.
GitHub Actions CI/CD ๊ตฌ์ถ• ์™„๋ฒฝ ๊ฐ€์ด๋“œ: React ์•ฑ AWS S3 + CloudFront ์ž๋™ ๋ฐฐํฌ GitHub Actions CI/CD ๊ตฌ์ถ• ์™„๋ฒฝ ๊ฐ€์ด๋“œ: React ์•ฑ AWS S3 + CloudFront ์ž๋™ ๋ฐฐํฌ"ํŒ€์žฅ๋‹˜, ์ œ๊ฐ€ ์ˆ˜๋™์œผ๋กœ ๋นŒ๋“œํ•ด์„œ ์˜ฌ๋ฆฌ๋‹ค๊ฐ€ ์‹ค์ˆ˜๋กœ ์˜›๋‚  ์ฝ”๋“œ๋ฅผ ๋ฎ์–ด์”Œ์› ์Šต๋‹ˆ๋‹ค..."์•ˆ๋…•ํ•˜์„ธ์š”! ํ•ญ์ƒ ๋” ํšจ์œจ์ ์œผ๋กœ ์ผํ•  ๊ถ๋ฆฌ๋ฅผ ํ•˜๋Š” ์•„์ด๋””์–ด ๋ฑ…ํฌ, ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.์ฒ˜์Œ ํ˜„์—… ํ”„๋กœ์ ํŠธ๋ฅผ ๋งก์•˜์„ ๋•Œ์˜ ๊ธฐ์–ต์ด ๋‚ฉ๋‹ˆ๋‹ค. ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์„ ๋งˆ์น˜๋ฉด ๋กœ์ปฌ์—์„œ npm run build๋ฅผ ์‹คํ–‰ํ•˜๊ณ , AWS S3 ์ฝ˜์†”์— ๋กœ๊ทธ์ธํ•œ ๋’ค, ๊ธฐ์กด ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๊ณ  ์ƒˆ ๋นŒ๋“œ ํŒŒ์ผ์„ ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ์œผ๋กœ ์˜ฌ๋ฆฌ๋Š” ์ผ๋ จ์˜ ๊ณผ์ •์„ ํ•˜๋ฃจ์—๋„ ์„œ๋„ˆ ๋ฒˆ์”ฉ ๋ฐ˜๋ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค ํ•œ ๋ฒˆ์€ ํŒŒ์ผ์„ ๋œ ์˜ฌ๋ฆฌ๊ฑฐ๋‚˜ ์‹ค์ˆ˜๋กœ CloudFront ์บ์‹œ ๋ฌดํšจํ™”๋ฅผ ๋นผ๋จน์–ด์„œ ์„œ๋น„์Šค ํ™”๋ฉด์ด ๊นจ์ง€๋Š” ๋Œ€ํ˜• ์‚ฌ๊ณ ๋ฅผ ์น˜๊ธฐ๋„ ํ–ˆ์ฃ .์ด๋Ÿฐ ๋‹จ์ˆœํ•˜๊ณ  ๋ฐ˜๋ณต์ ์ธ, ๊ทธ๋ฆฌ.. 2026. 9. 1.
AWS S3์™€ CloudFront๋ฅผ ๊ฒฐํ•ฉํ•œ ๊ณ ์„ฑ๋Šฅ ์ •์  ์›น์‚ฌ์ดํŠธ ๋ฐฐํฌ ์™„๋ฒฝ ๊ฐ€์ด๋“œ AWS S3์™€ CloudFront๋ฅผ ๊ฒฐํ•ฉํ•œ ๊ณ ์„ฑ๋Šฅ ์ •์  ์›น์‚ฌ์ดํŠธ ๋ฐฐํฌ ์™„๋ฒฝ ๊ฐ€์ด๋“œ"React๋กœ ์—ด์‹ฌํžˆ ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๊ฐœ๋ฐœํ•ด์„œ S3์— ์˜ฌ๋ ธ๋Š”๋ฐ, ์ฃผ์†Œ์ฐฝ์— https๊ฐ€ ์•„๋‹ˆ๋ผ http๋กœ ๋œจ๊ณ  ๋กœ๋”ฉ ์†๋„๋„ ๋ฌ˜ํ•˜๊ฒŒ ๋А๋ฆฌ์ง„ ์•Š์œผ์‹ ๊ฐ€์š”?"์•ˆ๋…•ํ•˜์„ธ์š”! ์ธํ”„๋ผ ์„ค๊ณ„๋ถ€ํ„ฐ ํ”„๋ก ํŠธ์—”๋“œ ์ตœ์ ํ™”๊นŒ์ง€ ๋‹ค๋ฐฉ๋ฉด์œผ๋กœ ๊ตฌ๋ฅด๊ณ  ์žˆ๋Š” ๊ฐœ๋ฐœ์ž์ž…๋‹ˆ๋‹ค.์ฃผ๋‹ˆ์–ด ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž๋ถ„๋“ค์ด ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐฐํฌํ•  ๋•Œ ๊ฐ€์žฅ ๋จผ์ € ์‹œ๋„ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๋ฐ”๋กœ 'AWS S3์˜ ์ •์  ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…' ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค. ๋ฒ„ํ‚ท์„ ํผ๋ธ”๋ฆญ์œผ๋กœ ์—ด์–ด๋‘๊ณ  index.html๋งŒ ์—…๋กœ๋“œํ•˜๋ฉด ๋š๋”ฑ ๋ฐฐํฌ๊ฐ€ ๋˜๋‹ˆ ๋ฌด์ฒ™ ํŽธ๋ฆฌํ•˜์ฃ .ํ•˜์ง€๋งŒ ์‹ค๋ฌด์—์„œ ์ด ๋ฐฉ์‹์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜๋ฉด ์น˜๋ช…์ ์ธ ๋ณด์•ˆ ๋ฌธ์ œ, HTTPS ๋ฏธ์ง€์›, ๊ทธ๋ฆฌ๊ณ  ๊ธ€๋กœ๋ฒŒ ๋กœ๋”ฉ ์†๋„ ์ €ํ•˜๋ผ๋Š” 3๊ฐ€์ง€ ํฐ ์žฅ๋ฒฝ์— ๋ถ€๋”ชํžˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์‹ค์ œ ์ƒ์šฉ ์„œ๋น„.. 2026. 8. 31.
728x90
๋ฐ˜์‘ํ˜•
LIST