๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŒป์Šคํ„ฐ๋”” ๊ด€๋ฆฌ/๐Ÿช‚ ์›น๊ฐœ๋ฐœ ๋ฐฐํฌ ์ฑŒ๋ฆฐ์ง€ ์Šคํ„ฐ๋””

[ ์›น๊ฐœ๋ฐœ ๋ฐฐํฌ ์ฑŒ๋ฆฐ์ง€ ์Šคํ„ฐ๋”” ] 23.04.22 - ํšŒ๊ณ ๋ก

by MuGeon Kim 2023. 4. 23.
๋ฐ˜์‘ํ˜•

1. ์ด๋ฒˆ ์ฃผ ์Šคํ„ฐ๋””์—์„œ ํ•™์Šตํ•œ ๋‚ด์šฉ

์ด๋ฒˆ ์ฃผ์—๋Š” CI/CD๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ ์ƒˆ๋กœ์šด ๋ฐฉ์‹์„ ์‹œ๋„ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.

 ํ•˜์ง€๋งŒ, ๋งŽ์€ ์–ด๋ ค์›€์„ ๊ฒช์—ˆ์Šต๋‹ˆ๋‹ค. 

์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ ๋ถ€๋ถ„์—์„œ ๋งŽ์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๊ณ , ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

์šฐ์„ , ๊ธฐ์กด์— ํ•™์Šตํ•œ Jenkins ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ CI/CD ํŒŒ์ดํ”„ ๋ผ์ธ์„ ๊ตฌํ˜„ํ•˜์˜€๋Š”๋ฐ Workspace์— Docker๋ฅผ ์ด์šฉํ•˜์—ฌ ์‹คํ–‰ํ•˜๊ณ , ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์„ Git webhook์„ ํ†ตํ•ด Jenkins workspace์— ์ ์šฉ์‹œํ‚ค๋Š” ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜, ์ด๋ฒˆ์— ์‹œ๋„ํ•œ ๋ฐฉ์‹์€ ๊ธฐ์กด์— ์‚ฌ์šฉํ•˜๋˜ ๋ฐฉ์‹๊ณผ๋Š” ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์—, ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ชจ๋“  ๊ฒƒ์„ ์ƒˆ๋กญ๊ฒŒ ํ•™์Šตํ•ด์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๋งŽ์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๊ณ , ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ์—๋„ ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ ค ๋งŽ์€ ๊ณ ๋ฏผ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์Šคํฌ๋ฆฝํŠธ ์ž‘์„ฑ ๋ถ€๋ถ„์—์„œ๋„ ์—ฌ๋Ÿฌ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์—, ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ์—๋„ ๋งŽ์€ ๊ณ ์ƒ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ, ์ด๋Ÿฌํ•œ ์–ด๋ ค์›€์„ ๊ฒช์œผ๋ฉด์„œ๋„ ์ƒˆ๋กœ์šด ๋ฐฉ์‹์„ ์‹œ๋„ํ•ด๋ณด์•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋งŽ์€ ๊ฒƒ์„ ๋ฐฐ์šฐ๊ณ  ์„ฑ์žฅํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. 

์ด๋ฒˆ ๊ฒฝํ—˜์„ ํ† ๋Œ€๋กœ ๋”์šฑ ์ž์‹ ๊ฐ์„ ๊ฐ€์ง€๊ณ , ๋” ๋‚˜์€ CI/CD ํŒŒ์ดํ”„ ๋ผ์ธ์„ ๊ตฌํ˜„ํ•ด ๋‚˜๊ฐˆ ์ˆ˜ ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

2. ํ•™์Šตํ•œ ๋‚ด์šฉ ์ •๋ฆฌ

 

[ Jenkins ] Jenkins Pipeline์„ ์ด์šฉํ•œ CI/CD + SSHAgent

[ 1. ๊ธ€์„ ์ž‘์„ฑํ•˜๋Š” ์ด์œ  ] ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๋ฉด์„œ ๋งˆ์ง€๋ง‰์œผ๋กœ Jenkins๋ฅผ ์ด์šฉํ•œ ํŒŒ์ดํ”„๋ผ์ธ CI/CD๋ฅผ ํ•˜๋ฉด์„œ ๋„ˆ๋ฌด ๋งŽ์€ ์˜ค๋ฅ˜๋ฅผ ๋งŒ๋‚ฌ์Šต๋‹ˆ๋‹ค. ํ•™์Šตํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ง€๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ž‘์„ฑ

pos04167.tistory.com

 

3. ํšŒ๊ณ ๋ก

AWS ๋ฐฐํฌ ์Šคํ„ฐ๋””๋ฅผ ํ†ตํ•ด ๋งŽ์€ ์–ด๋ ค์›€์„ ๊ฒช์—ˆ์ง€๋งŒ, ํ˜‘์—…๊ณผ ํ† ๋ก ์„ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

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

๋จผ์ €, ํ˜‘์—…๊ณผ ํ† ๋ก ์€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.

์™œ๋ƒํ•˜๋ฉด ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด ์–ด๋ ค์šด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜, ์Šคํ„ฐ๋””์—์„œ ๊ฐ™์ด ์ผํ•˜๋Š” ์‚ฌ๋žŒ๋“ค๊ณผ ํ† ๋ก ํ•˜๋ฉด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ํ˜‘์—…๊ณผ ํ† ๋ก ์€ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ ๋งค์šฐ ์ค‘์š”ํ•˜๋ฉฐ, ๋” ๋‚˜์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด์„œ๋Š”

์ด๋Ÿฌํ•œ ์—ญ๋Ÿ‰์„ ๋†’์—ฌ๋‚˜๊ฐ€๋Š” ๊ฒƒ์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ๋Š๊ผˆ์Šต๋‹ˆ๋‹ค..

๋˜ํ•œ, ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ณผ์ •์—์„œ AWS์˜ ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ๋“ค์„ ๋‹ค๋ฃจ๋ฉด์„œ ๋”์šฑ ๊นŠ์€ ์ดํ•ด๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

AWS๋Š” ๋‹ค์–‘ํ•œ ์„œ๋น„์Šค์™€ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋“ค์—๊ฒŒ๋Š” ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜, ์Šคํ„ฐ๋””๋ฅผ ํ†ตํ•ด AWS์˜ ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ๋“ค์„ ๋‹ค๋ฃจ๋ฉด์„œ ๋”์šฑ ๊นŠ์€ ์ดํ•ด๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฐ˜์‘ํ˜•