Jenkins

Jenkins


์  ํ‚จ์Šค๋ž€?


์  ํ‚จ์Šค๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์‹œ ์ง€์†์  ํ†ตํ•ฉ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ํˆด์ด๋‹ค.
๋‹ค์ˆ˜์˜ ๊ฐœ๋ฐœ์ž๋“ค์ด ํ•˜๋‚˜์˜ ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ๋ฐœํ•  ๋•Œ ๋ฒ„์ „ ์ถฉ๋Œ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ์ž ์ž‘์—…ํ•œ ๋‚ด์šฉ์„ ๊ณต์œ  ์˜์—ญ์— ์žˆ๋Š”
Git๋“ฑ์˜ ์ €์žฅ์†Œ์— ๋นˆ๋ฒˆํžˆ ์—…๋กœ๋“œํ•จ์œผ๋กœ์จ ์ง€์†์  ํ†ตํ•ฉ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ํ•ด ์ค€๋‹ค.

Jenkins ์žฅ์ 


๋งŒ์•ฝ ๊ฐœ๋ฐœ์ž๊ฐ€ Jenkins๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋ฐฐํฌ๋ฅผ ํ•˜๋ ค๊ณ  ํ•œ๋‹ค๋ฉด ์ด๋Ÿฌํ•œ ํ”Œ๋กœ์šฐ๋ฅผ ์‹คํ–‰ํ•˜๊ฒŒ ๋ ๊ฒƒ์ด๋‹ค.

1. ๋ฐฐํฌ์„œ๋ฒ„์—์„œ .war ๋˜๋Š” .jar build
2. FileJilla์™€ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ ์‚ฌ์šฉ build ํŒŒ์ผ ์šด์˜์„œ๋ฒ„๋กœ ์ด๋™
3. ssh๋ฅผ ํ†ตํ•œ ์šด์˜์„œ๋ฒ„ ์ ‘์† ํ›„ ์‹คํ–‰์ค‘์ธ ์„œ๋ฒ„ kill
4. ์ƒˆ๋กœ ๋ฐ›์•„์˜จ build ํŒŒ์ผ ๋ฐฐํฌ

๊ฐ„๋žตํ•˜๊ฒŒ 4๋‹จ๊ณ„๋ฅผ ๊ฑฐ์ฒ˜ ๋ฐฐํฌ๋ฅผ ํ•˜๊ฒŒ ๋œ๋‹ค.

ํ•˜์ง€๋งŒ ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด ๊ฐ„๋‹จํ•œ ์ˆ˜์ •์‚ฌํ•ญ ๋˜๋Š” ํ…์ŠคํŠธ ๋ณ€๊ฒฝ ๋ฐ ์ž‘์€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€์™€ ๊ฐ™์ด
๊ฐ„๋‹จํ•œ ์ž‘์—…์ด ์ง€์†์ ์œผ๋กœ ํ•„์š”ํ•˜๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด ์ด๋Ÿด๋—ด๋งˆ๋‹ค ์œ„์™€ ๊ฐ™์ด build -> ๋ฐฐํฌ, build -> ๋ฐฐํฌ๋ฅผ ํ•˜๋Š” ๊ณผ์ •์€ ์•„๊น๊ณ  ๋ถˆํ•„์š”ํ•œ ์‹œ๊ฐ„์ด ๋  ์ˆ˜ ์žˆ๋‹ค.

์ด๊ฒƒ์„ Jenkins๋ฅผ ํ†ตํ•ด ์ž๋™ํ™” ๋ฐฐํฌ ์‹œ์Šคํ…œ์„ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋‹ค.

1. ์ดˆ๊ธฐ Jenkins ๋‹ค์šด ๋ฐ ์…‹ํŒ…
2. ์—ฐ๋™๋œ Git ์ˆ˜์ •์‚ฌํ•ญ ํ‘ธ์‰ฌ
3. Jenkins๊ฐ€ build ํ›„ ์„œ๋ฒ„์— ๋ฐฐํฌ ์‹œ์ž‘(kill -> ๋ฐฐํฌ)

๋ถ„๋ช… Jenkins๋ฅผ ์‚ฌ์šฉํ•œ๊ฒƒ๊ณผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€๊ฒƒ์€ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

์š”์ฆ˜ ๊ฐ™์€ ์‹œ๋Œ€์—์„œ๋Š” ๊ผญ ํ•„์ˆ˜์ ์œผ๋กœ ํ•„์š”ํ•œ ์Šคํƒ์ด๋ผ ์ƒ๊ฐ๋œ๋‹ค.

Docker๋ฅผ ํ†ตํ•œ ์„ค์น˜


AWS EC2 linux์„œ๋ฒ„๋ฅผ ์˜ˆ์‹œ๋กœ ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.

Docker ์„ค์น˜ ๋ฐฉ๋ฒ•์€ Docker docs๋ฅผ ์ฐธ๊ณ ํ•œ๋‹ค.

https://docs.docker.com/engine/install/ubuntu/

์šด์˜์„œ๋ฒ„์— Docker๊ฐ€ ์„ค์น˜ ๋˜์–ด์žˆ๋‹ค๋ฉด ์ด์ „๋ฒ„์ ผ์„ ๋จผ์ € ์‚ญ์ œํ•ด์ค€๋‹ค.

$ sudo apt-get remove docker docker-engine docker.io containerd runc

Categories:

Updated:

Leave a comment