JavaRush /Java Blog /Random-KO /์šฐ๋ฆฌ๋Š” ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์œ„ํ•œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ์ธ "A๋ถ€ํ„ฐ Z๊นŒ์ง€์˜ Java ํ”„๋กœ์ ํŠธ"๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
Roman Beekeeper
๋ ˆ๋ฒจ 35

์šฐ๋ฆฌ๋Š” ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์œ„ํ•œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ์ธ "A๋ถ€ํ„ฐ Z๊นŒ์ง€์˜ Java ํ”„๋กœ์ ํŠธ"๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

Random-KO ๊ทธ๋ฃน์— ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค
์•ˆ๋…•ํ•˜์„ธ์š”, ๋ฏธ๋ž˜์˜ ์ˆ˜์„ ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด ์—ฌ๋Ÿฌ๋ถ„ ! ์ง€๋‚œ ๋ช‡ ๋‹ฌ ๋™์•ˆ ์ €๋Š” ๊ฐœ๋ฐœ์˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์„ ์„ค๋ช…ํ•˜๋Š” ๊ฐ„๋‹จํ•œ ๊ธฐ์‚ฌ๋ฅผ ์ž‘์„ฑํ•ด ์™”์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜์€ ๋‚ด ์•„์ด๋””์–ด์— ๋Œ€ํ•ด ๋ง์”€ ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค! ์ฒซ ์ง์žฅ์„ ๊ตฌํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ฃผ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ๋ฌด์—‡์ด ํ•„์š”ํ•ฉ๋‹ˆ๊นŒ? ๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ฒฝํ—˜์„ ์Œ“์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—”์ง€๋‹ˆ์–ด๊ฐ€ ์ž‘์—…ํ•˜๊ณ  ์ •๋ณด ๊ธฐ์ˆ ์˜ ์„ธ๊ณ„๋ฅผ ๋ฐœ์ „์‹œํ‚ค๋Š” ๋ฐ”๋กœ ์ด๋Ÿฌํ•œ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ฌด์—‡์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”์ง€ ์ดํ•ดํ•˜์‹ญ์‹œ์˜ค.

์‹œ๋ฆฌ์ฆˆ์˜ ๋ชจ๋“  ์ž๋ฃŒ:

"A๋ถ€ํ„ฐ Z๊นŒ์ง€์˜ Java ํ”„๋กœ์ ํŠธ": ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์œ„ํ•œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ ์ž‘์„ฑ - 1์–ด๋–ป๊ฒŒ ํ•˜๋‚˜์š”? ๋ญ”๊ฐ€ ์จ์•ผ ํ•ด์š”. ๋”ฐ๋ผ์„œ ์ด ์ž๋ฃŒ ์‹œ๋ฆฌ์ฆˆ์˜ ์ผ๋ถ€๋กœ ์šฐ๋ฆฌ๋Š” ์ž์ฒด ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์„ ๋‹จ๊ณ„๋ณ„๋กœ ์ž‘์„ฑํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค(์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜ ์ฐธ์กฐ). ๋™์‹œ์— ์ดˆ๋ณด Java ๊ฐœ๋ฐœ์ž์—๊ฒŒ๋„ ํ•„์š”ํ•œ ๊ธฐ์ˆ  ์Šคํƒ์„ ์ดํ•ดํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

ํ‘œ์ 

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—…, ํ•„์š”ํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ๋…ผ๋ฆฌ ์ƒ์„ฑ, ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ ๋ฐ ํ…Œ์ŠคํŠธ ์ž‘์—… ์„ค์ •์„ ๊ฒฐํ•ฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ฌด์—‡์„ ์“ธ ๊ฒƒ์ธ๊ฐ€? ๊ธ€์„ ์“ฐ๋ ค๋ฉด ์ž‘์—…์— ๋Œ€ํ•œ ๊ด€์‹ฌ์ด ์žˆ๊ณ  ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ •๋ง ์œ ์šฉํ•œ ๊ฒƒ์„ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ JavaRush ์›น์‚ฌ์ดํŠธ์—์„œ ์ž‘๋™ํ•˜๋Š” ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์ด ์ž‘์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์œ ์šฉํ• ๊นŒ์š”? ์˜์‹ฌ์—†์ด! ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์€ ์ž‘์„ฑํ•˜๊ธฐ๊ฐ€ ๊ทธ๋ฆฌ ์–ด๋ ต์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์œ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ž‘์—… ํ”„๋กœ์ ํŠธ๋ฅผ ๋น ๋ฅด๊ฒŒ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ ์‹œ๊ฐ„

๊ธฐ์‚ฌ๋Š” ์ผ์ฃผ์ผ์— ํ•œ ๋ฒˆ ๊ฒŒ์‹œ๋˜๋ฏ€๋กœ, ๋ถˆ๋ถ„๋ช…ํ•œ ๋‚ด์šฉ์ด ์žˆ์œผ๋ฉด ๋งˆ์Šคํ„ฐ/๋ณต์Šต/์งˆ๋ฌธ ์ž‘์„ฑ์„ ์œ„ํ•œ ์ถฉ๋ถ„ํ•œ ์‹œ๊ฐ„์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๊ธฐ์‚ฌ๋Š” ์šฐ๋ฆฌ๊ฐ€ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉํ•  ์ด๋ก ์  ๊ธฐ์ดˆ๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์€ ๋‹จ์ง€ ์—ฐ์Šต์ž…๋‹ˆ๋‹ค.

MVP(์ตœ์†Œ ์‹คํ–‰ ๊ฐ€๋Šฅ ์ œํ’ˆ)

"A๋ถ€ํ„ฐ Z๊นŒ์ง€์˜ Java ํ”„๋กœ์ ํŠธ": ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์œ„ํ•œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ ์ž‘์„ฑ - 2MVP๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ํ‰์†Œ์™€ ๊ฐ™์ด ์ด ์šฉ์–ด๋Š” ์šฐ๋ฆฌ์˜ ๊ฒƒ์ด ์•„๋‹ˆ์ง€๋งŒ ์œ„ํ‚ค ์—์„œ ํ•ฉ๋ฆฌ์ ์ธ ์„ค๋ช…์„ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค . ์šฐ๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ธ์šฉํ•ฉ๋‹ˆ๋‹ค: MVP๋Š” ์ตœ์†Œํ•œ์˜ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ ์ฒซ ๋ฒˆ์งธ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๊ธฐ์— ์ถฉ๋ถ„ํ•œ ์ œํ’ˆ์ž…๋‹ˆ๋‹ค. ์ฃผ์š” ์ž„๋ฌด๋Š” ์ œํ’ˆ์˜ ํ–ฅํ›„ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ๊ฐ€์„ค์„ ํ˜•์„ฑํ•˜๊ธฐ ์œ„ํ•œ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์—๊ฒŒ๋Š” ์ด ์„ค๋ช…์ด ์™„๋ฒฝํ•˜๊ฒŒ ๋“ค์–ด๋งž์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๊ฐ„๋‹จํ•œ ์„ค๋ช…: ํ…”๋ ˆ๊ทธ๋žจ ์‚ฌ์šฉ์ž๋กœ์„œ ์ €๋Š” ๊ทธ๋ฃน์—์„œ ์ƒˆ ๊ธฐ์‚ฌ๋ฅผ ๊ตฌ๋…ํ•˜๊ณ  ์ƒˆ ๊ธฐ์‚ฌ๊ฐ€ ๊ฒŒ์‹œ๋˜๋ฉด ์•Œ๋ฆผ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” ์„ฑ๊ณต ์Šคํ† ๋ฆฌ ๊ทธ๋ฃน์„ ์ฝ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค . ์ด๋Š” ์ œ๊ฐ€ ๊ณ„์† ๋ฐฐ์šฐ๊ณ  ์ƒˆ๋กœ์šด ๊ฒƒ์„ ๋ฐฐ์šฐ๋„๋ก ๋™๊ธฐ๋ฅผ ๋ถ€์—ฌํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฒŒ์œผ๋ฅด๊ณ  ๋งค๋ฒˆ ํŽ˜์ด์ง€ ์— ๋“ค์–ด๊ฐ€์„œ ์ƒˆ๋กœ ๊ณ ์น˜๊ณ  ์‹ถ์ง€ ์•Š์Šต๋‹ˆ๋‹ค . ๋”ฐ๋ผ์„œ ๋‚˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋จธ๋กœ์„œ ๋‚ด ์‚ถ์„ ๋” ์‰ฝ๊ฒŒ ๋งŒ๋“ค๊ณ  ์‹ถ๊ณ  ํ…”๋ ˆ๊ทธ๋žจ์— ์ƒˆ ๊ธฐ์‚ฌ๊ฐ€ ๊ฒŒ์‹œ๋˜์—ˆ๋‹ค๋Š” ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์ •๋ณด: ์ด ๊ทธ๋ฃน์€ ์ œ๊ฐ€ ์ถ”์ ํ•˜๋Š” ์œ ์ผํ•œ ๊ทธ๋ฃน์ด ์•„๋‹™๋‹ˆ๋‹ค. ์ €๋Š” Kharkov ์ถœ์‹ ์ด๋ฏ€๋กœ ๊ทธ๊ณณ์—์„œ ์ถœํŒ๋œ ๊ธฐ์‚ฌ๋ฅผ ์ฝ๋Š” ๋ฐ ๊ด€์‹ฌ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ œํ’ˆ์˜ ๊ฐœ๋ฐœ์ž๋กœ์„œ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋‚ด ์ž‘์—…์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด ๋งค์šฐ ๊ด€์‹ฌ์„ ๊ฐ€์งˆ ๊ฒƒ์ด๋ฏ€๋กœ ๊ด€๋ฆฌ์ž๊ฐ€ ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์˜ ํ†ต๊ณ„๋ฅผ ๋ณผ ์ˆ˜ ์žˆ๋„๋ก ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๊นŒ? ํ‹€๋ฆผ์—†์ด! ์–ด๋–ป๊ฒŒ? ์ด๊ฒƒ์ด ์ œ๊ฐ€ ์ผ๋ จ์˜ ๊ธฐ์‚ฌ์—์„œ ๋ณด์—ฌ์ค„ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

์ฝ”๋“œ ๋„ค์ž„

๋ชจ๋“  ๋ฉ‹์ง„ ํ”„๋กœ์ ํŠธ์—๋Š” ์ฝ”๋“œ๋ช…์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋„ ์˜ˆ์™ธ๋Š” ์•„๋‹ˆ๋ฏ€๋กœ ์ง€๊ธˆ์€ JRTB(JavaRush Telegram Bot) ์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค . ์ดํ•˜์—์„œ๋Š” ๊ทธ๋ ‡๊ฒŒ ๋ถ€๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์–ด๋–ค ์ฃผ์ œ๋ฅผ ๋‹ค๋ฃฐ ๊ฒƒ์ธ๊ฐ€?

"A๋ถ€ํ„ฐ Z๊นŒ์ง€์˜ Java ํ”„๋กœ์ ํŠธ": ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์œ„ํ•œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ ์ž‘์„ฑ - 3

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ƒํƒœ(๋ฐ์ดํ„ฐ ๋ฐ ์ •๋ณด)๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ ์„ ์ฆ‰์‹œ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ต์œก์—๋Š” ์ด์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— (์ œ๊ฐ€ ๊ธฐ์–ตํ•˜๋Š” ํ•œ :D) ํ•„์š”ํ•œ ์ง€์‹์˜ ๊ณต๋ฐฑ์„ ๋ฉ”์šฐ๋„๋ก ๋…ธ๋ ฅํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ํ˜ผ๋ž€์ด ์—†๋„๋ก ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๋ฅผ ์ตœ๋Œ€ํ•œ ๋‹จ์ˆœํ•˜๊ฒŒ ๋งŒ๋“ค๋„๋ก ๋…ธ๋ ฅํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด ๋ถ€๋ถ„์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
  1. MySQL์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ SQL ์ž‘์—… ์ด๋ก .
  2. MySQL ์ž‘์—…์„ ์œ„ํ•œ ๋„๊ตฌ๋Š” MySQL Workbench์ž…๋‹ˆ๋‹ค.
  3. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฒ„์ „ ๊ด€๋ฆฌ. ์ด๋™๊ฒฝ๋กœ ๋ฐ ์•ก์ฒด๋ฒ ์ด์Šค.
  4. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  5. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋„๋ฉด์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

ํž˜๋‚ด

์ด ์ฃผ์ œ์— ๋Œ€ํ•œ ๊ธฐ์‚ฌ๊ฐ€ ์ด๋ฏธ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก  ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์ด ์—†์œผ๋ฉด ์•„๋ฌด๊ฒƒ๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. JRTB ์ž‘์—…์„ ์‹œ์ž‘ํ•˜๋ ค๋ฉด git์„ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ง์ ‘ ํ•  ์ˆ˜๋„ ์žˆ๊ณ  ์ด ์ฃผ์ œ์— ๋Œ€ํ•œ ๋‚ด ๊ธฐ์‚ฌ๋ฅผ ์ฝ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์›ํ•˜๋Š” ๊ฒฝ์šฐ ๋ถ„๊ธฐ ์ „๋žต์— ๋Œ€ํ•ด ์ฝ์„ ์ˆ˜๋„ ์žˆ์ง€๋งŒ ์—ฌ๊ธฐ์„œ๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๊ฑด๋„ˆ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฉ”์ด๋ธ

์—ฌ๊ธฐ์—์„œ๋Š” ์กฐ๋ฆฝ ์‹œ์Šคํ…œ์˜ ์šฉ๋„, ์‚ฌ์šฉ ๋ฐฉ๋ฒ•, ์ฃผ์˜ํ•  ์ , ๋งค๋„ˆ ๊ทœ์น™์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ๋ฒ„์ „ ๊ด€๋ฆฌ์™€ ์ด๋ฅผ ์ •ํ™•ํžˆ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋„ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

๋„์ปค

์šฐ๋ฆฌ์˜ ์‚ถ์„ ๋”์šฑ ๋‹จ์ˆœํ•˜๊ณ  ์‰ฝ๊ฒŒ ๋งŒ๋“ค๊ณ  ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ตœ๋Œ€ํ•œ ๋‹จ์ˆœํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด Docker๋ฅผ ์‚ฌ์šฉํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด Docker๊ฐ€ ๋ฌด์—‡์ธ์ง€, ์–ด๋–ค ์œ ์šฉํ•œ ๋ช…๋ น์ด ์žˆ๋Š”์ง€ ์ด์•ผ๊ธฐํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ์‚ฌ์šฉ์ž ์ˆ˜์ค€์—์„œ Docker๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋ชจ๋ฅด๊ฑฐ๋‚˜ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†์„ ์ˆ˜๋„ ์žˆ์Œ์„ ์ฆ‰์‹œ ๋งํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.) ๋”ฐ๋ผ์„œ ๋ˆ„๊ตฐ๊ฐ€ Docker ์ž‘์—…์„ ๋” ์ข‹๊ณ /์‰ฝ๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•˜๋ฉด ๊ธฐ๋ปํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๋ถ€๋ถ„์—๋Š” ๋‹ค์Œ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.
  1. Docker์˜ ์ด๋ก ๊ณผ ์‹ค์ œ.
  2. Docker๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—…/๋ณต์›ํ•ฉ๋‹ˆ๋‹ค.
  3. Docker์—์„œ ์‹คํ–‰๋˜๋„๋ก ํ”„๋กœ์ ํŠธ๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๋ฐฐ์‹œ ์Šคํฌ๋ฆฝํŠธ

์ž‘์—…์„ ์ž๋™ํ™”ํ•˜๋ ค๋ฉด ๋•Œ๋กœ๋Š” ํ•˜๋‚˜ ๋˜๋Š” ๋‘ ๊ฐœ์˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. Bash ์Šคํฌ๋ฆฝํŠธ๋Š” ๋ณธ์งˆ์ ์œผ๋กœ Linux์˜ ๋ช…๋ น์ค„ ์ž‘์—…์ด๊ณ  ๋‹จ์ˆœํžˆ ๋ณ„๋„์˜ ํŒŒ์ผ์— ์ €์žฅ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ๊ฐœ๋ฐœ์ž๊ฐ€ ์–ด๋Š ์ •๋„ ์ดํ•ดํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ์ž…๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋งŒ๋“ค๊ธฐ

๋ชจ๋“  ๋“œ๋ผ์ด๋ธŒ๊ฐ€ ์—ฌ๊ธฐ์—์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์ „ ์ง€์‹์„ ๋ฐ”ํƒ•์œผ๋กœ ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡ ๊ฐœ์ฒด๋ฅผ ํฌํ•จํ•˜๋Š” Spring Boot ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฌด์—‡์„ ํ•  ๊ฑด๊ฐ€์š”?
  1. ์žˆ์–ด์•ผ ํ•  ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์™„์ „ํ•œ ์„ค๋ช…์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.
  2. ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์ด ๋ฌด์—‡์ธ์ง€์— ๋Œ€ํ•œ ๊ฐ„๋žตํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.
  3. Spring Boot ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  4. Lombok ์ž‘์—…์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.
  5. UniRest ์ž‘์—…์— ๋Œ€ํ•œ ์„ค๋ช…์ž…๋‹ˆ๋‹ค.
  6. ๋ช…๋ น ํŒจํ„ด ๊ตฌํ˜„ + ๊ด€๋ฆฌ์ž ๋ช…๋ น์— ๋Œ€ํ•œ ๊ณ ์œ ํ•œ ์ฃผ์„ ์ƒ์„ฑ ์ž‘์—….
  7. UniRest๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ JavaRush ์ฟผ๋ฆฌ(์˜ˆ: ๊ทธ๋ฃน ๋ชฉ๋ก, ๊ทธ๋ฃน์˜ ๊ธฐ์‚ฌ ๋ชฉ๋ก) ์ž‘์—…์„ ์œ„ํ•œ ํด๋ผ์ด์–ธํŠธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  8. ํ…Œ์ŠคํŠธ. ์šฐ๋ฆฌ์˜ ๊ธฐ๋Šฅ์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ํ…Œ์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
  9. ์ฝ”๋“œ ํ’ˆ์งˆ์„ ํ™•์ธํ•˜๊ณ  GitHub์—์„œ ์ž๋™์œผ๋กœ ๋นŒ๋“œํ•˜๋Š” ์‹œ์Šคํ…œ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  10. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ฒ„์ „ ๊ด€๋ฆฌ์™€ ํ•จ๊ป˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ.
๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ๋” ์ž˜ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์ด๋Ÿฌํ•œ ๋ชจ๋“  ๋‹จ๊ณ„๋Š” ๋‹จ๊ณ„๋ณ„๋กœ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

ํ–ฅํ›„ ๊ฒฐ๊ณผ

๊ฒฐ๊ณผ์ ์œผ๋กœ ์šฐ๋ฆฌ๋Š” ๊ธฐ์‚ฌ๋ฅผ ์ฝ๋Š” ์‚ฌ๋žŒ์ด๋ผ๋ฉด ๋ˆ„๊ตฌ๋‚˜ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์‹ค์ œ ํ”„๋กœ์ ํŠธ๋ฅผ ์–ป๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ…”๋ ˆ๊ทธ๋žจ ๋ด‡์˜ ์žฅ์ ์€ ๊ธฐ์‚ฌ์— ํฌํ•จ๋  ๋ด‡์— ์˜์กดํ•˜์ง€ ์•Š๋„๋ก ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์–ด๋–ค ๋ด‡์—๋„ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋” ๋ง์”€๋“œ๋ฆฌ์ž๋ฉด, ์ด๊ฒƒ์€ JRTB์˜ ์‹œ์ž‘์ผ ๋ฟ์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์€ ํ–ฅํ›„ ๋…ผ์˜/์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. JavaRush ํ”„๋กœ์ ํŠธ์˜ ๋ชจ๋“  ํ•™์ƒ๋“ค์—๊ฒŒ ์œ ์šฉํ•˜๋„๋ก ์ด ๋ด‡์„ ๋งŒ๋“œ์‹ญ์‹œ์˜ค. ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์ด ๋‹น์‹ ์˜ ์ฐฝ์กฐ๋ฌผ์„ ์‚ฌ์šฉํ•˜๊ณ  ์ข‹์•„ํ•œ๋‹ค๋Š” ๋Š๋‚Œ์€ ๋งŽ์€ ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค! ๊ทธ๋ฆฌ๊ณ  ์ด ๊ธฐ์‚ฌ ์‹œ๋ฆฌ์ฆˆ์˜ ๋…์ž๋กœ์„œ ์—ฌ๋Ÿฌ๋ถ„์€ ์‹ค์ œ ํ”„๋กœ์ ํŠธ์—์„œ ์ž‘์—…ํ•˜๋Š” ์‹ค์ œ ๊ฒฝํ—˜์„ ์–ป์„ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ „ํ†ต์ ์œผ๋กœ ์ €๋Š” ์†”๋ฃจ์…˜๊ณผ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ฒŒ์‹œํ•˜๋Š” Github์—์„œ ๋‚ด ๊ณ„์ •์„ ๊ตฌ๋…ํ•˜๋Š” ๊ฒƒ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค . JRTB์˜ ๋ชจ๋“  ์ž‘์—…์€ GitHub๋ฅผ ํ†ตํ•ด ์ด๋ฃจ์–ด์ง€๋ฏ€๋กœ ์•„์ง ๋“ฑ๋กํ•˜์ง€ ์•Š์•˜๋‹ค๋ฉด ๋“ฑ๋กํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋ชจ๋‘ ์ฝ์–ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ณง ๋งŒ๋‚˜์š” :)"A๋ถ€ํ„ฐ Z๊นŒ์ง€์˜ Java ํ”„๋กœ์ ํŠธ": ํฌํŠธํด๋ฆฌ์˜ค๋ฅผ ์œ„ํ•œ ์‹ค์ œ ํ”„๋กœ์ ํŠธ ์ž‘์„ฑ - 5
์ฝ”๋ฉ˜ํŠธ
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION