/number-test

๐Ÿ’ฌ ์ˆซ์ž ๊ธฐ๋ฐ˜ ๊ธฐ์–ต๋ ฅ ๊ฐ•ํ™” ํ•™์Šต ๊ฒŒ์ž„

Primary LanguageTypeScriptMIT LicenseMIT

board

์‚ฌ์‹ค์ƒ devent-frame์˜ ๋‹ค์Œ ์ž‘ํ’ˆ.

https://github.com/Team-DeVent/devent-frame ์—์„œ TypeScript๋กœ ์ „ํ™˜ ํ•œ ํ›„ ๊ฒŒ์‹œํŒ ๊ธฐ๋Šฅ์„ ๊ฐ•ํ™”ํ•˜๊ณ  React๋ฅผ ์ ์šฉํ•œ ํ”„๋กœ์ ํŠธ ์ž…๋‹ˆ๋‹ค. 2022๋…„ 1์›” 16์ผ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ Frame ํ”„๋กœ์ ํŠธ๋Š” ํ˜„์žฌ๊นŒ์ง€ ๋‹ค์–‘ํ•œ ์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ์— ์ ์šฉ๋˜์–ด ์™”์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ 1๋ฒˆ์˜ ๋ฉ”์ด์ € ์—…๋ฐ์ดํŠธ๋ฅผ ํ†ตํ•ด ๋ฆฌํŒฉํ† ๋ง ํ•ด์™”๊ณ  ์ˆ˜ ๋งŽ์€ ํ”„๋กœ์ ํŠธ์˜ ๋ณด์ผ๋Ÿฌํ”„๋กœ์ ํŠธ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ ํ–ฅ์ƒ๊ณผ ํ”„๋กœ์ ํŠธ ์‹œ์ž‘ ์ฃผ๊ธฐ ๋‹จ์ถ•, ๊ฐœ๋ฐœ ์†๋„ ๋‹จ์ถ•๋“ฑ ์—ฌ๋Ÿฌ ๋ถ€๋ฌธ์—์„œ ์ด์ ์„ ๊ฐ€์ ธ๋‹ค ์ฃผ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค๋งŒ ํ”„๋ ˆ์ž„ ํ”„๋กœ์ ํŠธ๋Š” ๋‹จ์ ๋„ ์กด์žฌํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณด์ผ๋Ÿฌํ”„๋กœ์ ํŠธ์˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์•ผ ํ•œ๋‹ค๋ฉด ๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ์ด ๋ณด์ผ๋Ÿฌํ”„๋กœ์ ํŠธ๋ฅผ ์ด์šฉํ•œ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์—๋„ ๋™์ผํ•˜๊ฒŒ ์ ์šฉ๋˜์–ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์ˆ˜์ •์„ ์—ฌ๋Ÿฌ๋ฒˆ ๊ฑฐ์ฒ˜์•ผ ํ•˜๋ฉฐ ํ”„๋ ˆ์ž„ ํ”„๋กœ์ ํŠธ ์ž์ฒด์˜ ์ˆ˜์ •์„ ํž˜๋“ค๊ฒŒ ํ•˜๋Š” ์›์ธ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ ์ž ๋ณด๋“œ์—์„œ๋Š” TypeScript, React, Redux, Docker, Oauth๋“ฑ Frame ํ”„๋กœ์ ํŠธ์—์„œ ๋ฌธ์ œ๊ฐ€ ๋˜์—ˆ๋˜ ๊ธฐ์ˆ  ๋ถ€๋ฌธ์„ ๋Œ€ํญ ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ๋Š” ๋” ์ž์œ ๋กœ์›Œ์กŒ๊ณ  ๊ฐœ๋ฐœ ์†๋„๋Š” ํ–ฅ์ƒ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋Š” ํ˜„์žฌ Scrap.devent.kr๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์„ค์น˜

git clone ๋ช…๋ น์„ ํ†ตํ•ด ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

git clone https://github.com/testprocess/board.git

์˜์กด์„ฑ์„ ์„ค์น˜ ํ•ฉ๋‹ˆ๋‹ค.

npm install

์•„๋ž˜ ๊ฐœ๋ฐœ ๋ช…๋ น์„ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ๋™ํ•ฉ๋‹ˆ๋‹ค.

npm run start:dev
npm run bundle
npm run compile

์„ค์ •

./server/config/oauth.ts์—์„œ Google Oauth GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET์„ ์„ค์ •ํ•˜์„ธ์š”. ๊ตฌ๊ธ€ ๋กœ๊ทธ์ธ์„ ํ™œ์„ฑํ™”ํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด IS_ENABLE ์˜ต์…˜์„ true๋กœ ๋ณ€๊ฒฝํ•˜์„ธ์š”.

./server/config/server.ts์—์„œ uri๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์˜ต์…˜์— ๋”ฐ๋ผ ์กฐ์ •ํ•ด์ฃผ์„ธ์š”.

๋ฐฐํฌ

ํ•ด๋‹น ํ”„๋กœ์ ํŠธ๋Š” GoCD๋กœ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ CI/CD๋ฅผ ํ†ตํ•ด ๋ฐฐํฌํ•œ๋‹ค๋ฉด ์•„๋ž˜ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ธํŒ… ํ›„ docker compose ๋กœ ๋นŒ๋“œํ•˜์„ธ์š”. MYSQL_ROOT_PASSWORD=<๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋น„๋ฒˆ> MAIN_JWT_SECRET=<JWR SECRET>

docker compose build
docker compose up