/2022-hackathon-Server

๐Ÿ† 2022 SW์ค‘์‹ฌ๋Œ€ํ•™ ๊ณต๋™ ํ•ด์ปคํ†ค

Primary LanguageJava

๐Ÿ† SW์ค‘์‹ฌ๋Œ€ํ•™ ๊ณต๋™ ํ•ด์ปคํ†ค 2022 ๊ต๋‚ด ์„ ๋ฐœ์ „

  • ์ฃผ์ œ : "๋””์ง€ํ„ธ ์ „ํ™˜์„ ์ด๋„๋Š” ํž˜, ์†Œํ”„ํŠธ์›จ์–ด"
  • ์ œ๋ชฉ : ์ง‘์—์„œ ์—ฐ์Šตํ•˜๋Š” ํšŒํ™”, ํ™ˆํ”ผํฌ(Homepeak)

๐ŸŽ™ ํ™ˆํ”ผํฌ, ์˜จ๋ผ์ธ์œผ๋กœ ๋ฐฐ์šฐ๋Š” ํšŒํ™” ์„œ๋น„์Šค

์Šคํ”ผํ‚น ํ…Œ์ŠคํŠธ ๋ฅผ ์ค€๋น„ํ•ด ๋ณธ ๊ฒฝํ—˜์ด ์žˆ๋‚˜์š”?

"ํšŒํ™” ์—ฐ์Šต์„ ์œ„ํ•ด ๋”์šด ๋‚ ์”จ์— ํ•™์›์— ๊ฐ€๊ฑฐ๋‚˜ ๋น„์‹ผ ๋ˆ์„ ๋‚ด์ง€ ์•Š๊ณ ๋„ ์ง‘์—์„œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ฝ์œผ๋ฉด์„œ ๋ฐœ์Œ์„ ํ‰๊ฐ€๋ฐ›๊ณ , ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์–ผ๋งˆ๋‚˜ ์ข‹์„๊นŒ์š”?"

์Šคํฌ๋ฆฝํŠธ๋ฅผ ์™ธ์šฐ๋Š” ์•„๋‚ ๋กœ๊ทธ์ ์ธ ๋ฐฉ์‹๋ณด๋‹ค๋Š” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋”ฐ๋ผ ์ฝ์–ด๋ณด๊ณ , ์‚ฌ์šฉ์ž์˜ ๋ฐœ์Œ์— ๋Œ€ํ•ด ๋”ฅ๋Ÿฌ๋‹ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ด ํ”ผ๋“œ๋ฐฑ์„ ์ฃผ๋ฉด์„œ ์‚ฌ์šฉ์ž์˜ ๋ฐœ์Œ์„ ๊ต์ •ํ•ด์ฃผ๋Š” ์„œ๋น„์Šค

์ €ํฌ์˜ ์„œ๋น„์Šค๋Š” ํ™ˆ๊ณผ ์Šคํ”ผํฌ๋ฅผ ํ•ฉ์นœ ํ™ˆํ”ผํฌ ์ž…๋‹ˆ๋‹ค!

๐Ÿ—บ ๋‚ด์šฉ

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

์ถ”๊ฐ€ ๊ธฐ๋Šฅ์œผ๋กœ๋Š” ๋ˆ„์ ๋œ ๋ฐœ์Œํ‰๊ฐ€ ์ ์ˆ˜ ๊ธฐ๋ฐ˜์˜ ๋žญํ‚น ํŽ˜์ด์ง€ UI์™€, ๋‚ด ๊ฐ€์ž… ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๋งˆ์ดํŽ˜์ด์ง€ UI๋ฅผ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ PWA๋ฅผ ํ™œ์šฉํ•ด ๋งˆ์น˜ ๋„ค์ดํ‹ฐ๋ธŒ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•œ ๊ฒฝํ—˜์„ ์ฃผ๋ ค ์‹œ๋„ํ–ˆ์œผ๋ฉฐ, ํ•˜๋ฃจ๋ผ๋Š” ์ œํ•œ๋œ ์‹œ๊ฐ„๋™์•ˆ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ํผ๋ธ”๋ฆญ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ(AWS EC2, RDS) & VSCode Live Share ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ–ฅ ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜

๐Ÿ“ธ ์Šคํฌ๋ฆฐ์ƒท

image แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-05-15 แ„‹แ…ฉแ„’แ…ฎ 3 09 16 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-05-15 แ„‹แ…ฉแ„’แ…ฎ 2 59 06 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-05-15 แ„‹แ…ฉแ„’แ…ฎ 2 59 11

๐Ÿง‘๐Ÿปโ€๐Ÿ’ป ํŒ€์›

๊น€ํƒœํ˜„
(Back-end)
์ •๋‹ค๋นˆ
(Back-end)
์ฒœ์ˆ˜ํ™˜
(Back-end)
๊น€์ฐฌ๋ฏผ
(Front-end)
์ „์˜์„œ
(Front-end)

๐ŸŽฏ ํ•ด๊ฒฐํ–ˆ๋˜ ์ด์Šˆ

  • ํ”„๋ก ํŠธ์—”๋“œ์—์„œ ๋งˆ์ดํฌ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด ๋ฐ˜๋“œ์‹œ HTTPS ์œ„์— ๋ฐฐํฌํ•ด์•ผ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.
    ๊ทธ๋Ÿฌ๋‚˜, EC2์˜ ํผ๋ธ”๋ฆญ ์—”๋“œํฌ์ธํŠธ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ HTTP ์œ„์—์„œ ๋ฐฐํฌ๋˜์–ด Mixed Content ์ด์Šˆ๋ฅผ ๊ฒฝํ—˜ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

    ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐฑ์—”๋“œ์—์„œ๋Š” SSL ์ธ์ฆ์„œ๋ฅผ ์ ์šฉํ•œ ๋„๋ฉ”์ธ์„ Nginx์— ์ž…ํžŒ ํ›„, ํ•ด๋‹น ๋„๋ฉ”์ธ์œผ๋กœ ์ „๋‹ฌ๋˜๋Š” ์š”์ฒญ์„ EC2๋กœ ํ”„๋ก์‹œํ•ด HTTPS-HTTPS ๊ฐ„์˜ ํ†ต์‹ ์„ ๊ตฌํ˜„ํ•ด๋‚ด Mixed Content ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.