์ฑ„๋„ํ†ก ์•„์ด์ฝ˜

SpringBoot & React ํฌํŠธํด๋ฆฌ์˜ค ํ”„๋กœ์ ํŠธ: AWS ์„œ๋น„์Šค๋กœ ์‹ค์ „ ๋ฐฐํฌ ์ž…๋ฌธ

React ํ”„๋ก ํŠธ์—”๋“œ์™€ SpringBoot ๋ฐฑ์—”๋“œ๋ฅผ AWS ํด๋ผ์šฐ๋“œ์— ์ง์ ‘ ๋ฐฐํฌํ•˜๋Š” ํฌํŠธํด๋ฆฌ์˜ค ์ค‘์‹ฌ ๊ฐ•์˜! ๋น ๋ฅด๊ฒŒ ์ž์‹ ์˜ ํฌํŠธํด๋ฆฌ์˜ค์— ํ”„๋ก ํŠธ, ๋ฐฑ์•ค๋“œ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐฐํฌํ•˜๊ณ  ์‹ถ์€ ๋ถ„๋“ค์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ๊ฐ•์˜์ž…๋‹ˆ๋‹ค! ๋ฐฐํฌํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ง€์‹๋“ค์„, ์„œ๋ฒ„ ์„ค์ •๋ถ€ํ„ฐ Docker, Domain ์—ฐ๊ฒฐ, Nginx, HTTPS ์ ์šฉ๊นŒ์ง€ ๋‹จ๊ณ„๋ณ„๋กœ ๋‹จ๊ธฐ๊ฐ„ ์‹ค์Šตํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค!

35๋ช… ์ด ์ˆ˜๊ฐ•ํ•˜๊ณ  ์žˆ์–ด์š”.

๋‚œ์ด๋„ ์ดˆ๊ธ‰

์ˆ˜๊ฐ•๊ธฐํ•œ ๋ฌด์ œํ•œ

aws๋ฐฐํฌ
aws๋ฐฐํฌ
ํด๋ผ์šฐ๋“œ
ํด๋ผ์šฐ๋“œ
ํ’€์Šคํƒ
ํ’€์Šคํƒ
docker
docker
ํฌํŠธํด๋ฆฌ์˜ค
ํฌํŠธํด๋ฆฌ์˜ค
aws๋ฐฐํฌ
aws๋ฐฐํฌ
ํด๋ผ์šฐ๋“œ
ํด๋ผ์šฐ๋“œ
ํ’€์Šคํƒ
ํ’€์Šคํƒ
docker
docker
ํฌํŠธํด๋ฆฌ์˜ค
ํฌํŠธํด๋ฆฌ์˜ค

์ˆ˜๊ฐ• ํ›„ ์ด๋Ÿฐ๊ฑธ ์–ป์„ ์ˆ˜ ์žˆ์–ด์š”

  • ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ EC2, Nginx, Docker ๋“ฑ์„ ํ™œ์šฉํ•ด ๋ฐ๋ธŒ์˜ต์Šค์˜ ๊ฐ์„ ์ตํž™๋‹ˆ๋‹ค

  • ํ”„๋ก ํŠธ/๋ฐฑ์—”๋“œ ๋ถ„๋ฆฌ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ดํ•ดํ•˜๊ณ , ํ˜ผ์ž์„œ๋„ ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์—ญ๋Ÿ‰์„ ๊ฐ–์ถฅ๋‹ˆ๋‹ค

๐Ÿ˜† ์ด ๊ฐ•์˜๋งŒ ๋“ค์œผ๋ฉด! React & SpringBoot ํ’€์Šคํƒ ํ”„๋กœ์ ํŠธ

AWS ๋ฐฐํฌํ•˜๊ธฐ๋ฅผ ํ˜ผ์ž์„œ๋„ ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค!


์ด ๊ฐ•์˜๋Š” ํ”„๋ก ํŠธ์—”๋“œ(React)์™€ ๋ฐฑ์—”๋“œ(SpringBoot, Java)๋กœ ๊ตฌ์„ฑ๋œ ์›น ํ’€์Šคํƒ ํ”„๋กœ์ ํŠธ๋ฅผ ๋Œ€์ƒ์œผ๋กœ AWS ํด๋ผ์šฐ๋“œ์— ์ง์ ‘ ๋ฐฐํฌํ•˜๋Š” ์‹ค์ „ ์ค‘์‹ฌ ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค.

AWS EC2 ์„œ๋ฒ„ ํ™˜๊ฒฝ์…‹ํŒ…, Docker ์ปจํ…Œ์ด๋„ˆ ๋งŒ๋“ค๊ธฐ, ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ, Nginx ์„ค์ •, HTTPS ์ ์šฉ, ๋ฐฐํฌ ์ž๋™ํ™”(CI/CD)๊นŒ์ง€ ์‹ค์ œ ์„œ๋น„์Šค ์šด์˜์— ํ•„์š”ํ•œ ํ•ต์‹ฌ ๊ธฐ์ˆ ์„ ์ตํžˆ๋ฉฐ ๊ฐœ๋ฐœ์ž ํฌํŠธํด๋ฆฌ์˜ค๋กœ ์ž์‹  ์žˆ๊ฒŒ ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ๋น ๋ฅด๊ฒŒ ๊ฒฐ๊ณผ๋ฌผ์„ ๋งŒ๋“ค์–ด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค!


์•ž์œผ๋กœ ๊ฐœ๋ฐœ๊ณผ ์šด์˜์˜ ๊ฐ„๊ทน์„ ์ค„์ด๊ณ , ์ง„์งœ ์„œ๋น„์Šค ์šด์˜์ž๊ฐ€ ๋˜๋Š” ์ฒซ๊ฑธ์Œ์„ ๋”›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ๐Ÿ˜ƒ


๐ŸŽฏ ์ด๋Ÿฐ ๋ถ„์—๊ฒŒ ์ ํ•ฉํ•ด์š”!

  • React์™€ SpringBoot๋กœ ๊ฐœ๋ฐœ์€ ํ•ด๋ดค์ง€๋งŒ, ๋ฐฐํฌ๋Š” ์ฒ˜์Œ์ธ ์›น ๊ฐœ๋ฐœ ์ž…๋ฌธ์ž
    โ†’ ์‹ค์ „ ๋ฐฐํฌ ๊ณผ์ •์„ ๋”ฐ๋ผํ•˜๋ฉฐ ์ง์ ‘ ์„œ๋น„์Šค ์šด์˜๊นŒ์ง€ ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์–ด์š”

  • ํฌํŠธํด๋ฆฌ์˜ค์— ์‹ค์ œ ๋ฐฐํฌ๋œ ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ด๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ์ž ์ง€๋ง์ƒ, ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž
    โ†’ ๋„๋ฉ”์ธ ์—ฐ๊ฒฐ, HTTPS ์ ์šฉ๊นŒ์ง€ ์™„๋ฃŒ๋œ ๊ฒฐ๊ณผ๋ฌผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์–ด์š”


๊ฐ•์˜ ์‹ค์Šต์‹œ, aws ์ธํ”„๋ผ ๊ตฌ์กฐ๋„

โœ… ์ด๋Ÿฐ ๋‚ด์šฉ์„ ๋ฐฐ์›Œ์š”!


์„น์…˜ (0) .env ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์ ์šฉ ๋ฐฉ๋ฒ•

  • .env ์‹œํฌ๋ฆฟ ๋ณ€์ˆ˜ ์‚ฌ์šฉ์ด์œ 

  • SpringBoot ๋ฐฑ์•ค๋“œ ๋‚ด application.yml์—์„œ .env ์—ฐ๋™

  • docker-compose๋กœ mysql DB ์ปจํ…Œ์ด๋„ˆ ๋งŒ๋“ค์‹œ, ์—ฐ๋™

  • React ๋‚ด ํ™˜๊ฒฝ๋ณ„(local, prod) .env ํŒŒ์ผ ๋ถ„๋ฆฌ๋ฒ•


์„น์…˜ (1) AWS EC2 ๋ฐ ๋ฐฑ์•ค๋“œ

  • EC2 ์„œ๋ฒ„ ์„ค์ • ๋ฐ SSH ์ ‘์†

  • Docker๋กœ MySQL ํ™˜๊ฒฝ ๊ตฌ์„ฑ

  • SpringBoot ๋ฐฑ์—”๋“œ ๋ฐฐํฌ (nohup)

  • React ํ”„๋ก ํŠธ ๋นŒ๋“œ ๋ฐ ์‹คํ–‰ (pm2)

๋ฐฑ์•ค๋“œ ๊ตฌ์กฐ๋„

์„น์…˜ (2) ํ”„๋ก ํŠธ ๋ฐ ๋„๋ฉ”์ธ

  • ๋„๋ฉ”์ธ ๊ตฌ๋งค ๋ฐ Route53 ์—ฐ๋™

  • Nginx ์›น์„œ๋ฒ„ ์„ค์ • ๋ฐ API ์—ฐ๊ฒฐ

  • HTTPS ์ธ์ฆ์„œ ์ ์šฉ (certbot)

  • GitHub Action์„ ํ†ตํ•œ ์ž๋™ ๋ฐฐํฌ

ํ”„๋ก ํŠธ ๋„๋ฉ”์ธ ๊ตฌ์กฐ๋„

์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ  ์‚ฌํ•ญ

์‹ค์Šต ํ™˜๊ฒฝ

  • ์šด์˜์ฒด์ œ: Windows / macOS / Linux (Ubuntu ๊ถŒ์žฅ)

  • ์‚ฌ์šฉ ๋„๊ตฌ: IntelliJ, VSCode, Git, MobaXterm, AWS ์ฝ˜์†”, Docker, Nginx

  • PC ์‚ฌ์–‘: ์ตœ์†Œ i5 CPU, 8GB RAM ์ด์ƒ ๊ถŒ์žฅ

ํ•™์Šต ์ž๋ฃŒ

  • ๊ฐ•์˜์šฉ PDF ๋ฐ ์‹ค์Šต ์ž๋ฃŒ ์ œ๊ณต

  • GitHub ์ €์žฅ์†Œ ์—ฐ๋™์„ ํ†ตํ•œ ์‹ค์Šต ํ”„๋กœ์ ํŠธ zip

  • ๋‹จ๊ณ„๋ณ„ ์‹ค์Šต ๊ฐ€์ด๋“œ ๋ฌธ์„œ ํฌํ•จ

์„ ์ˆ˜ ์ง€์‹ ๋ฐ ์œ ์˜์‚ฌํ•ญ

  • React์™€ SpringBoot ํ”„๋กœ์ ํŠธ ์‹คํ–‰ ๊ฒฝํ—˜

  • Git ์‚ฌ์šฉ ๋ฐ ๊ธฐ๋ณธ ๋ช…๋ น์–ด ์ดํ•ด

  • ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด(Linux) ์‚ฌ์šฉ ๋Šฅ๋ ฅ

  • AWS ๊ณ„์ • ๋ฐ ๋„๋ฉ”์ธ ๊ตฌ๋งค ๊ฐ€๋Šฅ ์—ฌ๋ถ€


์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • React์™€ SpringBoot๋กœ ๊ฐœ๋ฐœ์€ ํ•ด๋ดค์ง€๋งŒ, ๋ฐฐํฌ๋Š” ์ฒ˜์Œ์ธ ์›น ๊ฐœ๋ฐœ ์ž…๋ฌธ์ž

  • ํฌํŠธํด๋ฆฌ์˜ค์— ์‹ค์ œ ๋ฐฐํฌ๋œ ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ด๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ์ž ์ง€๋ง์ƒ

  • AWS EC2, Nginx, Docker ๋“ฑ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ์ฒ˜์Œ ์ ‘ํ•ด๋ณด๋Š” ๊ฐœ๋ฐœ์ž

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • React ํ”„๋กœ์ ํŠธ ์ƒ์„ฑ ๋ฐ ์‹คํ–‰ ๊ฒฝํ—˜

  • SpringBoot ํ”„๋กœ์ ํŠธ ์‹คํ–‰ ๊ฒฝํ—˜

  • Git ์‚ฌ์šฉ ๋ฐ GitHub ์—ฐ๋™ ๊ฒฝํ—˜

  • ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด ์‚ฌ์šฉ ๋Šฅ๋ ฅ (Linux ๊ธฐ๋ณธ)

์•ˆ๋…•ํ•˜์„ธ์š”
์ฝ”๋”ฉ๋„๋‹ˆ์ž…๋‹ˆ๋‹ค.

์ฃผ๋กœ ๋ฐฑ์•ค๋“œ SpringBoot, AWS ์ธํ”„๋ผ ๊ตฌ์ถ•, ์›น์•ฑ PRD ๊ธฐํš๋ถ€ํ„ฐ, Next.js ๊ธฐ๋ฐ˜์˜ ํ”„๋กœ๋•ํŠธ ๊ฐœ๋ฐœ, AI Python์œผ๋กœ ์—…๋ฌด์ž๋™ํ™”,

LLM ์ฑ—๋ด‡๊ฐœ๋ฐœ, Flutter ์•ฑ๊ฐœ๋ฐœ ๊ธฐ์ˆ ๋“ค์„ ๋‹ค๋ฃจ๋Š” ๊ฐœ๋ฐœ์ž ์ฝ”๋”ฉ๋„๋‹ˆ์ž…๋‹ˆ๋‹ค ๐Ÿ˜ƒ

 

๋„ค์ด๋ฒ„ ํ”Œ๋žซํฌ๋จธ ์Šคํ„ฐ๋”” ์นดํŽ˜์™€ ์ฝ”๋”ฉ๋„๋‹ˆ ์œ ํŠœ๋ธŒ ์ฑ„๋„์„ ์šด์˜ํ•˜๋ฉฐ

์ธํ”„๋ผ, ํ’€์Šคํƒ ๊ฐœ๋ฐœ, ์›นยท์•ฑ ๊ฐœ๋ฐœ, ์—…๋ฌด ์ž๋™ํ™”, ์ˆ˜์ตํ™”๊นŒ์ง€

โ€œ๊ณ ๊ตฐ๋ถ„ํˆฌํ•˜๋Š” ๋ฐฅ๋ฒŒ์ด ๊ฐœ๋ฐœ์žโ€๋กœ์„œ ํ˜„์‹ค์„ ๋ฐ˜์˜ํ•œ ์ฝ˜ํ…์ธ ๋ฅผ ๋งŒ๋“ค์–ด๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์œ ํŠœ๋ธŒ์ฑ„๋„: https://www.youtube.com/@์ฝ”๋”ฉ๋„๋‹ˆ

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

13๊ฐœ โˆ™ (2์‹œ๊ฐ„ 10๋ถ„)

ํ•ด๋‹น ๊ฐ•์˜์—์„œ ์ œ๊ณต:

์ˆ˜์—…์ž๋ฃŒ
๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์•„์ง ์ถฉ๋ถ„ํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ์ˆ˜๊ฐ•ํ‰์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด์ฃผ์„ธ์š”!

๋น„์Šทํ•œ ๊ฐ•์˜

๊ฐ™์€ ๋ถ„์•ผ์˜ ๋‹ค๋ฅธ ๊ฐ•์˜๋ฅผ ๋งŒ๋‚˜๋ณด์„ธ์š”!

โ‚ฉ33,000