์ผ์ฑ ์ฒญ๋
์ํํธ์จ์ด ์์นด๋ฐ๋ฏธ(SSAFY)์์ Docker์ Jenkins๋ฅผ ์ด์ฉํ์ฌ ๋ฐฐํฌ๋ฅผ ํ์์ง๋ง, ํ์ ํ๋ช
์ด ๊ทธ ๋ถ๋ถ์ ๋งก์์ ํ์ฌ ์ด๋ป๊ฒ ๋ฐฐํฌํ๋์ง๋ ์ ๋ชจ๋ฆ
๋๋ค.
๋์ CI, CD์ ๋ํด์ ์์๋ณด์.
์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ๋จ๊ณ๋ฅผ ์๋ํ ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ณด๋ค ์งง์ ์ฃผ๊ธฐ๋ก ๊ณ ๊ฐ์๊ฒ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ.
๊ธฐ๋ณธ ๊ฐ๋
์ ํ๋ฆฌ์ผ์ด์ ์ ํตํฉ ๋ฐ ํ ์คํธ ๋จ๊ณ์์๋ถํฐ ์ ๊ณต ๋ฐ ๋ฐฐํฌ์ ์ด๋ฅด๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ผ์ดํ์ฌ์ดํด ์ ์ฒด์ ๊ฑธ์ณ ์ง์์ ์ธ ์๋ํ์ ์ง์์ ์ธ ๋ชจ๋ํฐ๋ง์ ์ ๊ณต.
์ด๋ฐ ๊ตฌ์ถ ์ฌ๋ก๋ฅผ ์ผ๋ฐ์ ์ผ๋ก "CI/CD ํ์ดํ๋ผ์ธ"์ด๋ผ ๋ถ๋ฅด๋ฉฐ ๊ฐ๋ฐ๋ฐ ์ด์ํ์ ์ ์์ผ๋ฐฉ์์ ํตํด ์ง์๋๋ค.
CI๋ ๊ฐ๋ฐ์๋ฅผ ์ํ ์๋ํ ํ๋ก์ธ์ค์ธ ์ง์์ ์ธ ํตํฉ.
์ฑ๊ณต์ ์ผ๋ก ๊ตฌํํ ๊ฒฝ์ฐ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ ์๋ก์ด ์ฝ๋ ๋ณ๊ฒฝ์ฌํญ์ด ์ ๊ธฐ์ ์ผ๋ก ๋น๋ ๋ฐ ํ ์คํธ๋์ด ๊ณต์ ๋ฆฌํฌ์งํ ๋ฆฌ์ ํตํฉ๋์ด ์๋ก ์ถฉ๋ํ ์ ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐ.
CI๊ฐ ํ์ํ ํ๊ฒฝ
๋ชฉํ
๋ฒ๊ทธ๋ฅผ ์ ์ํ๊ฒ ์ฐพ์ ํด๊ฒฐํ๊ณ , ์ํํธ์จ์ด์ ํ์ง์ ๊ฐ์ ํ๊ณ .
์๋ก์ด ์
๋ฐ์ดํธ์ ๊ฒ์ฆ ๋ฐ ๋ฆด๋ฆฌ์ฆ์ ์๊ฐ์ ๋จ์ถ์ํค๋ ๊ฒ.
์ง์์ ์ธ ๋ฐฐํฌ๋ฅผ ์๋ฏธ
๊ฐ๋ฐ์๋ค์ด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ์ฉํ ๋ณ๊ฒฝ ์ฌํญ์ด ๋ฒ๊ทธ ํ ์คํธ๋ฅผ ๊ฑฐ์ณ ๋ฆฌํฌ์งํ ๋ฆฌ์ ์๋์ผ๋ก ์ ๋ก๋ ๋๋ ๊ฒ์ ๋ปํ๋ฉฐ, ์ด์ ํ์ ์ด ๋ฆฌํฌ์งํ ๋ฆฌ์์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์๊ฐ์ผ๋ก ๋ฐฐํฌํ ์ ์์ต๋๋ค.
๊ฐ๋ฐํ๊ณผ ๋น์ฆ๋์คํ ๊ฐ์ ๊ฐ์์ฑ๊ณผ ์ปค๋ฎค๋์ผ์ด์ ๋ถ์กฑ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ค๋๋ค.
Jenkins
๊ฐ์ฅ ์ค๋๋๊ณ , ๊ฐ์ฅ ์ธ๊ธฐ์๋ CI Tool, Java๋ก ์์ฑ๋ ์คํ์์ค SW๋ก ๊ฐ๋ฐ์๊ฐ ์ง์ CI/CDํ๊ฒฝ์ ์ค์ ํ ์ ์๊ณ , Git, Maven๊ณผ ๊ฐ์ ๋ฒ์ ์ ์ด ๋๊ตฌ๋ฅผ ์ง์ํจ.
Travis CI
์ต์ด์ ํธ์คํ
CI ์๋ฒ.
์์ฒด์ ์๋ฒ๋ ์ ๊ณต.
Githubํ๋ก์ ํธ๋ฅผ ์ํด ํน๋ณํ ํธ์คํ
๋ ์๋ฒ๋ก Github์ ๊ธด๋ฐํ๊ฒ ํตํฉ๋์์ด ์์ํ๊ธฐ ํธํจ.
TeamCity
JetBrain์ฌ์ ์ ํ์ผ๋ก ์๋ฐ๊ธฐ๋ฐ์ ์์ฉ ์ํํธ์จ์ด
Java, .NET, Ruby, XCode๋ฅผ ์ง์ํ๋ฉฐ JetBrain์ฌ์ ์ด์ ๊ด๋ฆฌ ์์คํ
๊ณผ ํตํฉ๋์์.
์ค์ ์ ์ฉ์ด์ฑ๊ณผ ์ฆ๊ฐ์ ์ธ ์ฌ์ฉ์ฑ์ ์ข์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ก ์๋ ค์ ธ ์๋ค.
Bamboo
์์ฒด์ CI์๋ฒ๋ก, Atlassian ์ ํ.
JIRA, Bitbucket, Fisheye, Hipchat์ ํตํฉ๋ ์ ์๋ค.
https://www.redhat.com/ko/topics/devops/what-is-ci-cd
https://artist-developer.tistory.com/24
https://velog.io/@hanblueblue/CICD-ํด-๋น๊ต
https://blog.naver.com/PostView.nhn?blogId=kkyy0126&logNo=221558008077&parentCategoryNo=&categoryNo=91&viewDate=&isShowPopularPosts=true&from=search