1. ์ ํจ์ค ํ์ดํ๋ผ์ธ ์ค์ Dashboard > New Item > PipelineGithub project์ webhook ๋ฑ๋กํ repository URL ์
๋ ฅBuild Triggers > Github hook trigger for GITscm polling ์ฒดํฌ ํ์ดํ๋ผ์ธ ํฌ๊ฒ 3๋จ๊ณ๋ก ๋๋ ์ ์๋ค.Git Clone ๋จ๊ณGit ์ ์ฅ์์์ ์์ค ์ฝ๋๋ฅผ ๊ฐ์ ธ์ค๋ ๋จ๊ณbranch ๊ฐ์ ธ์ฌ ๋ธ๋์น๋ฅผ ์ง์ credentialsId ์ฌ์ฉํ Git ์๊ฒฉ ์ฆ๋ช
์ ID๋ฅผ ์ง์ ํ๋ค. ์ฌ์ ์ Jenkins์์ ์ค์ ๋ ๊ฒurl ๊ฐ์ ธ์ฌ Git ์ ์ฅ์์ URL์ ์ง์ Build ๋จ๊ณGradle์ ์ฌ์ฉํ์ฌ ์์ค ์ฝ๋๋ฅผ ๋น๋ํ๋ ๋จ๊ณ./gradlew clean build ๋ช
๋ น์ ์คํํ์ฌ Gradle ๋น๋๋ฅผ ์ํDeploy ๋จ๊ณs..
๐ณ์ธํ๋ผ/Jenkins
1. ์ ํจ์ค ํ๋ฌ๊ทธ์ธ ์ค์น 1)gradle๋ก ๋น๋ํ๊ธฐ์ํด gradle ๊ด๋ จ ํ๋ฌ๊ทธ์ธ ์ค์นDashboard > Manage Jenkins > Tools Gradle Installations > Version ์ ํ ํ๊ณ Save 2) SSH agent ํ๋ฌ๊ทธ์ธ ์ค์นSSH๋ฅผ ํตํด EC2 ์ธ์คํด์ค์ ์ ๊ทผํ ๊ฒ์ด๋ค. ์ด๋ฅผ ์ํด SSH agent๋ฅผ ์ค์นํด์ผํ๋ค.Dashboard > Manage Jenkins > Plugins > Available pluginsAvailable plugins > SSH agent ๊ฒ์ > ์ค์น ์ค์น๊ฐ ์๋ฃ๋์๋ค.2. Repository WebHook ๋ฑ๋ก์ฌ์ฉ githubhttps://github.com/seongjju/opensource GitHub - seongjju/opensou..
1. Jenkins ์ค์ EC2์ ํผ๋ธ๋ฆญ IP๋ฅผ ํตํด ์ธ๋ถ์์ ์ ์ํ๋ค. $ sudo docker logs jenkins์ด๋ jenkins์ ๋ก๊ทธ๊ฐ ์ถ๋ ฅ๋๊ณ , ์ด๋ฅผ ํตํด ์ ํจ์ค๋ฅผ ์ต์ด๋ก ์ค์นํ๊ณ ์คํํ ๋ ํ์ํ initial admin password๋ฅผ ํ์ธ ํ ์ ์๋ค.๋๋ ์ง์ ์ ํจ์ค ์ปจํ
์ด๋์ ์ ์ํ์ฌ, ํ์ผ์ ๋ด์ฉ์ ์กฐํํ ์ ์๋ค.$ sudo docker exec -it jenkins /bin/bash$ cat /var/jenkins_home/secrets/initialAdminPassword install suggested plugins๋ฅผ ๋๋ฅธ๋ค.ํ๊ท ์ ์ผ๋ก 10๋ถ์ด๋ด์ ์๋ฃ๋๋ค.์ดํ admin ๊ณ์ ์ผ๋ก ๋ก๊ทธ์ธํ๊ธฐ ์ํ ์ ๋ณด๋ฅผ ์
๋ ฅํด์ค๋ค.์๊ฒฉ ์ฃผ์๋ก Jenkins URL์ด ์ค์ ๋๊ฒ์ ํ์ธ ํ ์..
1. Architecture์ค๋ช
1 GitHub์ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ ๋ฐ์2 GitHub์ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ๊ฐ์ง๋๋ฉด, ์ค์ ๋ GitHub Webhook์ด Jenkins์๊ฒ HTTP POST ์์ฒญ3 Jenkins์์ ๋ณ๊ฒฝ์ฌํญ ๊ฐ์งํ๊ณ CI / CD ํ์ดํ๋ผ์ธ ์คํ4 ๋น๋ & ๋ฐฐํฌ5 ์ํํธ์จ์ด๋ฅผ ๋น๋ํ๊ณ ํ
์คํธํ ํ, Docker ์ด๋ฏธ์ง๋ก ํจํค์งํ๊ณ EC2 ์ธ์คํด์ค์ ๋ฐฐํฌํ๋ค. ๋จผ์ ๊ธฐ์กด์ ๊ฐ์ง๊ณ ์๋ ํ๋ก์ ํธ ํ์ผ์ด ๋น๋๊ฐ ์๋๋์ง ๋ก์ปฌ์์ ํ์ธํ๋ค. 2. EC2 ์ธํ
EC2์์ ์ธ์คํด์ค๋ฅผ ๋ง๋ค์ด์ค๋ค. ์ดํด์ ํธ์์ฑ๊ณผ ์ฌ์ฉ ํ ec2๋ฅผ ๋ด๋ฆด๊ฑฐ๊ธฐ์ ip๋ฅผ ๊ฐ๋ฆฌ์ง ์๊ณ ์ค๋ช
ํ๊ฒ ๋ค.๋ณธ์ธ์ Ubuntu ํ๋ฆฌํฐ์ด๋ก ๋ง๋ค์๋ค. ํ๋ ฅ์ IP๋ก ์ ์์ ์ํ IP๋ฅผ ์์ฑํ๋ค.๋ง๋ ec2์ ์ฐ๊ฒฐํด์ค๋ค.ec2์์ฑ์ ์ฌ์ฉํ .pe..
1. CI / CD ๊ฐ ๋ฌด์์ธ๊ฐ CI/CD๋?CI: Continuous Integration ์ฆ, ์ง์์ ์ธ ํตํฉ์ด๋ผ๋ ์๋ฏธ์ดํ๋ฆฌ์ผ์ด์
์ ์๋ก์ด ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ด ์ ๊ธฐ์ ์ผ๋ก ๋น๋ ๋ฐ ํ
์คํธ ๋์ด ๊ณต์ ๋ ํฌ์งํ ๋ฆฌ์ ํตํฉํ๋ ๊ฒ์ ์๋ฏธ๋ชฉํ๋ฒ๊ทธ๋ฅผ ์ ์ํ๊ฒ ์ฐพ์ ํด๊ฒฐํ๊ณ ์ํํธ์จ์ด์ ํ์ง์ ๊ฐ์ ํ๊ณ ์๋ก์ด ์
๋ฐ์ดํธ์ ๊ฒ์ฆ ๋ฐ ๋ฆด๋ฆฌ์ฆ์ ์๊ฐ์ ๋จ์ถ์ํค๋ ๊ฒ์ ๋ฆฌํ์๋ฉด CI๋ ๊ฐ๋ฐ์๊ฐ ํ๋ฃจ์ ์ฌ๋ฌ ๋ฒ ์ฝ๋๋ฅผ ๊ณต์ ์ ์ฅ์์ ํตํฉํ๋๋ก ์๊ตฌํ๋ ๊ฐ๋ฐ ๋ฐฉ์์ด๋ฉฐ, CI์ ๊ถ๊ทน์ ์ธ ๋ชฉํ๋ ๋ ์ข์ ์ฝ๋๋ฅผ ๋ ๋น ๋ฅด๊ฒ ์ ๊ณตํ๋ ๊ฒ์ด๋ค. ์๊ท๋ชจ๋ก ์ด๋ฃจ์ด์ง๋ ์ฆ์ ๋ณ๊ฒฝ์ ์๋ํ๋ฅผ ์ ์ฉํ๋ฉด ํ์์ ๋ฒ๊ทธ๋ฅผ ๋์ฑ ๋น ๋ฅด๊ฒ ์ฐพ๊ณ ํด๊ฒฐํ ์ ์์ผ๋ฉฐ, ์๋ก์ด ์
๋ฐ์ดํธ๋ฅผ ๊ฒ์ฆํ๊ณ ๋ฆด๋ฆฌ์คํ๋ ๋ฐ ์์๋๋ ์๊ฐ์ ์ค์ผ ์ ์๋ค. CD: Continuous..