Jenkins ํ๋ก์ ํธ ์์ฑ ๋ฐ CI/CD ๊ตฌ์ถ
- Jenkins ๋ฉ์ธํ๋ฉด์์ '์๋ก์ด item' ํด๋ฆญ
- ์ด๋ฆ ์์ฑ ๋ฐ Freestyle project ์ ํ ํ OK
- ์์ค ์ฝ๋ ๊ด๋ฆฌ > Git ์ ํ
- ๋น๋ ์ ๋ฐ > Build when a change is pushed to Gitlab. ์ ํ & Secret token > Generate ์ ํ ํ key ๋ณต์ฌ
- Build Steps > Execute shell ์ ํ
- ํ๋ก์ ํธ ๋ฃจํธ ํด๋๋ก ์ด๋ ํ Dockerfile ์คํํ๋ ์ ์คํฌ๋ฆฝํธ ์์ฑ
# ํ๋ก์ ํธ ๋ฃจํธ๋ก ์ด๋์ด ํ์ํ ๊ฒฝ์ฐ
cd ${PROJECT_ROOT}
docker build -t ${CONTAINER_NAME} .
docker run -d -p ํฌํธ๋ฒํธ:ํฌํธ๋ฒํธ ${CONTAINER_NAME}
- ๋น๋ ํ ์กฐ์น > Publish build status to GitLab ์ ํ
- ๋งจ ์๋ ์ ์ฅ ๋ฒํผ ํด๋ฆญ
- GitLab์์ ์ข์ธก Settings > Webhooks
- 4๋ฒ์ ์๋ webhook URL์ URL์ ์
๋ ฅํ๊ณ ๋ณต์ฌํด ๋ Secret token์ ์
๋ ฅ
- ํ๋ก์ ํธ์ ๋ง๋ Trigger ์ค์ ํ Add webhook ํด๋ฆญ
- ํ๋จ Project Hooks์์ ์ํ๋ Trigger๋ฅผ ์ ๋ฐํ์ฌ ํ
์คํธ ๊ฐ๋ฅ
๋๊ธ