์ฟ ๋ฒ๋คํฐ์ค๋ฅผ ์์๋ณด๊ธฐ ์์, ์ค์ผ์คํธ๋ ์ด์
๊ณผ ๊ทธ์ ๊ด๋ จํ ๊ฐ๋
๋ค์ ์์๋ณด์!!๊ธฐ๋ณธ๊ฐ๋
๋ก๋๋ฐธ๋ฐ์ฑ๊ฐ๋
: ์ฌ๋ฌ ์ปจํ
์ด๋์ ์์ฒญ์ ๋ถ์ฐ์์ผ ๋ถํ๋ฅผ ๊ท ๋ฑํ๊ฒ ๋ฐฐ๋ถํ๋ ๊ฒ๋ฐฉ๋ฒ: ๋ก๋๋ฐธ๋ฐ์ฑ ์ฅ์น๊ฐ ์ปจํ
์ด๋ ์์ ๋ฐฐ์น๋๋ค. ์ด๋ฅผ ํตํด ์ปจํ
์ด๋๋น ๋ถํ๋ฅผ ์ค์ด๊ณ ์ฒ๋ฆฌ ์๊ฐ ๋จ์ถ ๊ฐ๋ฅํฌ์ค ์ฒดํฌ๊ฐ๋
: ์ปจํ
์ด๋๊ฐ ์ ์์ ์ผ๋ก ์คํ ์ค์ธ์ง ์ฌ๋ถ๋ฅผ ๋ชจ๋ํฐ๋งํ๋ ํ๋ก์ธ์ค๋ฐฉ๋ฒ: ์ปจํ
์ด๋์ ์์ฒญ์ ๋ณด๋ด๊ณ ์ปจํ
์ด๋๊ฐ ์ ์์ ์ผ๋ก ์๋ต์ ๋ฐํํ๋์ง ํ์ธ. ๋ง์ฝ ์๋ต์ด ๋ฐํ๋์ง ์์ผ๋ฉด ๋ฌธ์ ๊ฐ ์๋ค๊ณ ์ฌ๊ธฐ๊ณ , ํด๋น ์ปจํ
์ด๋๋ฅผ ๋นํ์ฑํํ์ฌ ์์คํ
์ด ์ ์์ ์ผ๋ก ๊ฐ๋๋๋ ์๊ฐ์ ๋๋ฆฐ๋ค. (= ๊ฐ์ฉ์ฑ์ ์ ์งํ๋ค.)์ค์ผ์ผ๋ง๊ฐ๋
: ์์ฒญ ๊ท๋ชจ์ ๋ฐ๋ผ ์ปจํ
์ด๋ ์๋ฅผ ์กฐ์ ํ๋ ๊ฒ๋ฐฉ๋ฒ:์๊ณ๊ฐ์ ๋ฐ๋ผ ๋ฆฌ์์ค๋ฅผ ์๋์ผ๋ก ๋๋ฆฌ๊ฑฐ๋ ์ค์ฌ ์ฑ๋ฅ๊ณผ ํจ์จ์ฑ์ ์ ์ง์ค์ผ์คํธ๋ ์ด..
๐ณ์ธํ๋ผ
๊ฐ์ํ๊ฐ๋
: ๊ฐ์ํ๋ ๋ฌผ๋ฆฌ์ ์ธ ํ๋์จ์ด ์์์ ์ํํธ์จ์ด์ ์ผ๋ก ์ถ์ํํ์ฌ, ์ฌ๋ฌ ๊ฐ์ ํ๊ฒฝ์ ์์ฑํ๊ฑฐ๋ ํ๋์ ์์์ ๋ค์์ ์ฌ์ฉ์ ํน์ ์์คํ
์ด ๊ณต์ ํ ์ ์๋๋ก ํ๋ ๊ธฐ์ 1๋์ ๋ฌผ๋ฆฌ์๋ฒ๋ฅผ ์ฌ๋ฌ๋์ ๊ฐ์์๋ฒ๋ก ๊ตฌ์ถ ๊ฐ๋ฅ์ฌ๋ฌ๋์ ๋ฌผ๋ฆฌ์๋ฒ๋ฅผ ํ๋์ ๊ฐ์์๋ฒ๋ก ๊ตฌ์ถ ๊ฐ๋ฅ์๋ฒ, ์คํ ๋ฆฌ์ง, ๋คํธ์ํฌ ๋ฑ์ ํ๋์จ์ด ์์์ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ์ฌ์ฉ๊ฐ๋ฅ ๊ฐ์ํ์ ์ ํ์๋ฒ ๊ฐ์ํ: ํ๋์ ๋ฌผ๋ฆฌ์ ์๋ฒ๋ฅผ ์ฌ๋ฌ ๋์ ๊ฐ์ ์๋ฒ๋ก ๋๋์ด ์ฌ์ฉํ๋ ๋ฐฉ์๋คํธ์ํฌ ๊ฐ์ํ: ๋ฌผ๋ฆฌ์ ๋คํธ์ํฌ ์ฅ์น๋ฅผ ๊ฐ์ํํ์ฌ ๋
ผ๋ฆฌ์ ๋คํธ์ํฌ๋ฅผ ๊ตฌ์ฑ, ๋คํธ์ํฌ ์ค์ ์ ์ํํธ์จ์ด๋ก ํ๋ค.๋ฌผ๋ฆฌ์ ์ผ๋ก๋ ํ๋์ธ ๋คํธ์ํฌ๋ ์ฌ๋ฌ ๊ฐ์ ๋คํธ์ํฌ๋ก ๋ถํ ๊ฐ๋ฅ๋ฌผ๋ฆฌ์ ์ผ๋ก ๋จ์ด์ ธ ์๋ ์ฌ๋ฌ ๋คํธ์ํฌ๋ฅผ ๊ฐ์ ๋คํธ์ํฌ ํ๋๋ก ํตํฉ ๊ฐ๋ฅ๋ฐ์คํฌํ ๊ฐ์ํ: ๋ฌผ๋ฆฌ์ ์ปดํจํฐ ์์ด ๊ฐ..
์ด๋ฏธ์ง๋น๋๋?์ด๋ฏธ์ง๊ฐ ์ด๋ป๊ฒ ์ ์ฅ๋๋์ง, ์ด๋ฏธ์ง๋ฅผ ํจ์จ์ ์ผ๋ก ์ ์ฅํ๋ ๋ ์ด์ด๋ ๊ตฌ์กฐ์ด๋ฏธ์ง๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ: ์ปค๋ฐ, ๋น๋๋น๋ ์ํด์ ๋์ปค ํ์ผ์ด๋ผ๋ ๋ช
์ธ์ ์์ฑ๋ ํจ์จ์ ์ธ ์ด๋ฏธ์ง ๋น๋ ๋ฐฉ์: ๋ฉํฐ ์คํ
์ด์ง ๋ฐฉ์ 1. ์ด๋ฏธ์ง์ ๋ ์ด์ด์ด๋ฏธ์ง๋ ์ปจํ
์ด๋ ์คํ ์ํ ์ฝ๊ธฐ ์ ์ฉ ํ์ผ์ด๋ฉฐ, ๋์ปค ์ด๋ฏธ์ง๋ ๋ ์ด์ด๋ ํ์ผ ์์คํ
์ผ๋ก ๊ตฌ์ฑ๋๋ค.๋ ์ด์ด๋ ์ฌ๋ฌ๊ฐ์ ์ธต์ผ๋ก ๊ตฌ์ฑ๋ ๊ฒ ์ค ํ๋์ ์ธต์ผ๋ก, ๋ ์ด์ด๋ ๊ตฌ์กฐ๋ ์ฌ์ฌ์ฉํ๊ธฐ ์ข์ ๊ตฌ์กฐ์ด๋ค.์ด ๋ ์ด์ด๋ค์ด ๋ชจ์ฌ์ ํ๋์ ์ด๋ฏธ์ง๋ก ๊ตฌ์ฑ๋๋ ๊ฒ์ด๋ค. ์ฆ, ๊ฐ ๋ ์ด์ด๋ ์ด๋ฏธ์ง์ ์ผ๋ถ๋ถ์ด๋ค. ์ ํ๋์ ์ด๋ฏธ์ง๋ฅผ ์ฌ๋ฌ ๋ ์ด์ด๋ก ๊ตฌ์ฑํ ๊น?๊ณต๊ฐ์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ด ์ด๋ฏธ์ง ์ ์ฅ&์ ์ก ์ ์คํ ๋ฆฌ์ง์ ๋คํธ์ํฌ ์ฌ์ฉ๋์ ์ ์ฝํ ์ ์๋ค. ๊ฑด์ถ๋๋ฉด์ ์๊ฐํ์ํฌ๋ช
ํ ๋๋ฉด์ ์ฌ๋ฌ ์ฅ ์ค๋นํ์ฌ ..
์ด๋ฏธ์ง ๋ ์ง์คํธ๋ฆฌ๋ ๋์ปค ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ์ ์ฅ์์ด๋ค.์ด ์ด๋ฏธ์ง ๋ ์ง์คํธ๋ฆฌ๋ฅผ ํตํด์ ๊ฐ์ธ์ด๋ ํ์ด ์ด๋ฏธ์ง๋ฅผ ๋ค๋ฅธ ์ฌ๋๊ณผ ๊ณต์ ํ๊ฑฐ๋ ํ์ํ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ฐ์ ์ ์๋ค. ์ ๋ฒ ์ฑํฐ์์ Nginx ์ปจํ
์ด๋๋ฅผ ์คํํ ๋, ์ด ์ด๋ฏธ์ง ๋ ์ง์คํธ๋ฆฌ์์ Nginx ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ฐ์๋ค.๋ํ ๋ ์ง์คํธ๋ฆฌ: ๋์ปค ํ๋ธ์๋กญ๊ฒ ๋ง๋ ๋์ปค ํ๋ธ์ ๊ณ์ ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์
๋ก๋ํ๊ณ ๋ค์ด๋ก๋ํด๋ณด๊ฒ ๋ค. ์ด๋ฏธ์ง ๋ ์ง์คํธ๋ฆฌ๊ฐ๋
: ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ๋ ์ ์ฅ์๊ฐ๋ฐ์๋ GitHub๋ฅผ ์ฌ์ฉํด์ ์์ ์ ์์ค ์ฝ๋๋ฅผ ์ฝ๊ฒ ๋ณด๊ดํ๊ณ ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค๊ณผ ๊ณต์ Image Registry๋ GitHub์ ์์ฃผ ๋น์ท๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ Public Image Registry๋ Docker HubGitHub๊ฐ ์์ค ์ฝ๋๋ฅผ ์ ์ฅํ๋ ์ ์ฅ์์ด๋ฉด, Docker Hub๋ ์ด๋ฏธ์ง๋ฅผ..
1. ์๋ฒ ์ํฐํ๋ผ์ด์ฆ ์ด์ ํ๊ฒฝ์์ ๋ง์ ์์ ์๋ฒ๋ฅผ ์ด์ํด์ผ ํ๋ค.์ด๋ 3๊ฐ์ง ๋ฐฉ์์ด ์กด์ฌํ๋ค. ๋ฒ ์ด๋ฉํ, ํ์ดํผ๋ฐ์ด์ , ์ปจํ
์ด๋ํ๋์ฉ ์์๋ณด์๋ฒ ์ด๋ฉํ์ ์ฐ๋ฆฌ๊ฐ ์ผ๋ฐ์ ์ผ๋ก ์ปดํจํฐ ์ฌ์ฉํ๋ ๋ฐฉ์๊ณผ ๋๊ฐ๋คํ์ดํผ๋ฐ์ด์ ๋ฅผ ์์๋ณด๊ธฐ ์ ์ ๊ฐ์ํ๋ฅผ ์์๋ณด์ 2. ๊ฐ์ํ ๊ฐ์ํ๋ ์ค์ ๋ก ์กด์ฌํ๋ ์ปดํจํฐ๊ฐ ์๋์ง๋ง ๋ง์น ์ปดํจํฐ๊ฐ ์กด์ฌํ๋ ๊ฒ์ฒ๋ผ ๋ง๋ค์ด์ค๋ค. ์ฆ, ํ๋์ ์ปดํจํฐ๋ก ์ฌ๋ฌ๋ ์ปดํจํฐ๋ฅผ ๊ฐ์ง๊ฒ์ฒ๋ผ ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.๋ฌผ๋ฆฌ์ ์ธ ์ปดํจํฐ ์์ ๋
ผ๋ฆฌ์ ์ธ ์ปดํจํฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๋ค. ๊ทธ๋ผ ๊ฐ์ํ๋ฅผ ์ฌ์ฉํ๋ฉด ๋ญ๊ฐ ์ข์๊น?์๋ฅผ๋ค์ด OS 1๊ฐ์ 4๊ฐ์ ํ๋ก๊ทธ๋จ์ ์คํํ๋ค๊ณ ํ์ ๋, ๋ฌธ์ ๊ฐ ์์ด๋ณด์ธ๋ค.ํ์ง๋ง, ํ ํ๋ก๊ทธ๋จ์์ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด, ์ด๋ ์ ์ฒด์ ์ํฅ์ ์ค ์ ์๊ณ , ํ ํ๋ก๊ทธ๋จ์์ ์ฌ์ฉ๋์ด ์ฆ๊ฐํด์ ๋จ์์๋ ๋ฆฌ์์ค๋ฅผ ..
๊ฐ๋ฐ์ ํ๋ฉด์ ๋์ปค๋ ํ์ฐ์ ์ผ๋ก ์ฌ์ฉํ ์ ๋ฐ์ ์์๊ณ , ์ด๋ฒ ๋ฐฉํ ๋ ์ ๋๋ก ๊ณต๋ถํด๋ณด๋ ค๊ณ ํ๋ค. ํ์ฌ ์๋ ๊ฐ์๋ฅผ ๋ฃ๊ณ ์๊ณ , ๊ฐ์ฌ๋๊ป ํ๋ฝ์ ๋งก๊ณ ๋ธ๋ก๊ทธ์ ์ ๋ฆฌ๊ธ์ ์ฌ๋ฆฌ๋ ค๊ณ ํ๋ค.https://inf.run/Apgvc ๊ฐ๋ฐ์๋ฅผ ์ํ ์ฌ์ด ๋์ปค ๊ฐ์ | ๋ฐ๋ธ์ํค - ์ธํ๋ฐ๋ฐ๋ธ์ํค | ํ์
๊ฐ๋ฐ์๊ฐ ๋์ปค๋ฅผ ์ฌ์ฉํ ๊ฒฝํ์ ๋
น์ฌ๋ธ ์๋ก์ด ์ปค๋ฆฌํ๋ผ์ผ๋ก ๊ธฐ์กด ๊ต์ฌ ๋ฐ ๊ฐ์์ ์ฐจ๋ณ๋ ๊ฐ์๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋จ์ํ ๋ช
๋ น์ด ์ฌ์ฉ๋ฒ์ด ์๋ ๋์ปค๋ฅผ ์ ์ฌ์ฉํด์ผํ๋์ง ๋ํ ๊ทผwww.inflearn.com ์นดํ
๊ณ ๋ฆฌhttps://koreatstm.tistory.com/155
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..
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..