๐ŸŒŠ Infra/CI · CD

ยท๐ŸŒŠ Infra/CI · CD
1. Github Secrets ์„ค์ •  Github Actions๋ฅผ ์ ์šฉํ•  Repo์˜ Setting์—์„œ Secrets and variables์— ๋“ค์–ด๊ฐ€์ฃผ๋ฉดNew repository secret๋กœ ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Œ DOCKERHUB_USERNAME=> Docker Hub ์‚ฌ์šฉ์ž ์ด๋ฆ„DOCKERHUB_PASSWORD=> Docker Hub ๋น„๋ฐ€๋ฒˆํ˜ธEC2_HOST=> EC2 ํผ๋ธ”๋ฆญ IPEC2_USER=> EC2์— SSH๋กœ ์ ‘์†ํ•  ๋•Œ ์‚ฌ์šฉํ•  ์‚ฌ์šฉ์ž ์ด๋ฆ„์ž„(์šฐ๋ถ„ํˆฌ EC2๋ฅผ ์‚ฌ์šฉ์ค‘์ด๊ธฐ์— ubuntu๋กœ ์ง€์ •ํ•˜์˜€์Œ)EC2_SSH_KEYhttps://hanjungyo.tistory.com/127 Jenkins์„ ์ด์šฉํ•œ Spring Boot ๋ฐฐํฌ ์ž๋™ํ™”๋กœ์ปฌ์—์„œ Spring Boot ๋นŒ๋“œํ•˜๊ณ  docker imag..
ยท๐ŸŒŠ Infra/CI · CD
๋กœ์ปฌ์—์„œ Spring Boot ๋นŒ๋“œํ•˜๊ณ  docker image ๋งŒ๋“ค์–ด์„œ docker hub์— ์˜ฌ๋ฆฌ๊ณ ..EC2 ๋“ค์–ด๊ฐ€์„œ docker hub์— ์žˆ๋Š” ์ด๋ฏธ์ง€ pull ๋ฐ›์•„์„œ run ์‹œํ‚ค๊ธฐ... ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด ํ• ์ˆ˜๋ก CI/CD์˜ ์ค‘์š”์„ฑ์ด ๊นŠ๊ฒŒ ๋Š๊ปด์ง€๋Š” ๊ฒƒ ๊ฐ™๋‹ค... ๋ฐฐํฌ์— ์žˆ์–ด์„œ ๋‚˜์™€ ๊ฐ™์ด ๊ท€์ฐฎ์Œ ํ˜น์€ ์–ด๋ ค์›€์„ ๋Š๋ผ๊ณ  ์žˆ๋Š” ๋‹ค๋ฅธ ๋ถ„๋“ค์„ ์œ„ํ•ด ๊ธฐ๋ก์„ ๋‚จ๊ธฐ๋ ค๊ณ ํ•œ๋‹ค  ์‹œ์ž‘ํ•˜๊ธฐ์— ์•ž์„œ ์Šฌํ”ˆ ์‚ฌ์—ฐ (Jenkins ๋„์ž…๊ธฐ..) ์ผ๋‹จ ์‹œ์ž‘ํ•˜๊ธฐ์— ์•ž์„œ Jenkins์„ ๋„์ž…ํ•˜๊ธฐ๊นŒ์ง€์˜ ์Šฌํ”ˆ ์ „์„ค์ด ์žˆ๋‹ค.. https://hanjungyo.tistory.com/126 ์ฝ”๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ, ๋ฐฐํฌ ๋“ฑ์˜ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ Github" data-og-host="hanjungyo.tistory.com" dat..
ยท๐ŸŒŠ Infra/CI · CD
Github Actions์˜ ๊ธฐ๋ณธ ๊ฐœ๋… ์ผ๋‹จ Github Actions๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” CI/CD ๋„๊ตฌ์ž„=> ์ฝ”๋“œ๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ, ๋ฐฐํฌ ๋“ฑ์˜ ์ž‘์—…์„ ์ž๋™์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Œ Github Actions๋Š”  Github ๋‚ด์—์„œ ๋ฐ”๋กœ ์‹คํ–‰๋˜๊ธฐ์— ์ถ”๊ฐ€ ์„ค์ •์ด ์ ์–ด ๋‚œ์ด๋„๊ฐ€ ๋น„๊ต์  ์‰ฝ๊ณ  PR์ด๋‚˜ ์ปค๋ฐ‹, ์ด์Šˆ, ํƒœ๊ทธ ๋“ฑ ๋‹ค์–‘ํ•œ Github์˜ ์ด๋ฒคํŠธ์— ๋ฐ˜์‘์ด ๊ฐ€๋Šฅํ•จ!(ํผ๋ธ”๋ฆญ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ๊ธฐ์ค€์œผ๋กœ ๋ฌด๋ฃŒ์ž„) ๊ตฌ์„ฑ ์š”์†Œ ์šฐ์„  ํ•œ ๋ฒˆ ์ญ‰ ์ฝ์–ด๋ณด๊ณ  ๋ฐ‘์˜ ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ์ดํ•ด๊ฐ€ ๋” ์‰ฌ์›€ Workflow Github Actions์—์„œ ์‹คํ–‰๋˜๋Š” ์ž๋™ํ™”๋œ ํ”„๋กœ์„ธ์Šค๋กœ .github/workflows/ ๋””๋ ‰ํ† ๋ฆฌ์— .yml ํŒŒ์ผ๋กœ ์ •์˜๋จ=> ํ•˜๋‚˜ ์ด์ƒ์˜ Job์œผ๋กœ ๊ตฌ์„ฑ๋˜๊ณ  push, p..
ยท๐ŸŒŠ Infra/CI · CD
CI/CD๋ž€? ์ผ๋ฐ˜์ ์œผ๋กœ ๊ฐœ๋ฐœ์„ ํ•  ๋•Œ 1. IDE์— ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑ 2. ์ฝ”๋“œ ํ…Œ์ŠคํŠธ 3. ๋นŒ๋“œ 4. ๋นŒ๋“œ๋œ ์•„ํ‹ฐํŒฉํŠธ๋ฅผ ๋ฐฐํฌ 5. ๋ฒ„๊ทธ๊ฐ€ ๋ฐœ์ƒ ํ•˜๋ฉด 1๋ฒˆ์œผ๋กœ ๋Œ์•„๊ฐ€ ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑ ์˜ ์‚ฌ์ดํด์„ ๋Œ๊ฒŒ๋œ๋‹ค => ์ฝ”๋“œ ์ˆ˜์ •์€ ์˜ค๋ž˜ ์Œ“์•„๋‘์—ˆ๋‹ค๊ฐ€ ํ•œ๋ฒˆ์— ํ•˜๊ธฐ๋ณด๋‹ค๋Š” ์งง์€ ์ฃผ๊ธฐ๋กœ ๋นจ๋ฆฌ๋นจ๋ฆฌ ํ•˜๋Š”๊ฒŒ ์ข‹์Œ ๊ทธ๋ž˜์„œ ์ƒˆ๋กญ๊ฒŒ ๋– ์˜ค๋ฅด๊ณ  ์žˆ๋Š” ์ปจ์…‰์ด Continuous Integration (CI) ์ž„!(์ง€์†์ ์ธ ํ†ตํ•ฉ) ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์ ํŠธ์˜ ํ’€ ์‚ฌ์ดํด์„ ์งง์€ ์ฃผ๊ธฐ๋กœ ๋Œ๋ ค์„œ ๋น ๋ฅด๊ฒŒ ์ž๋™ํ™” ์‹œํ‚ค๊ณ , ๊ฐœ์„ ์„ ํ•˜์ž๋Š” CI ์ปจ์…‰์ด๋‹ค => ์ฝ”๋“œ, ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ ๋ถ€๋ถ„์„ ์ž๋™ํ™”ํ•ด์„œ ์กฐ๊ธˆ ๋” ์žฆ์€ ์ฃผ๊ธฐ๋กœ ๊ทธ ์ƒ๋ช…์ฃผ๊ธฐ๋ฅผ ์งง๊ฒŒ ํ•ด๋ณด์ž๋Š” ์ด์•ผ๊ธฐ! Continuous Delivery / Deployment (CD) ์ž„!(์ง€์†์ ์ธ ์ œ๊ณต / ๋ฐฐํฌ) ๋ณด..
JJunGyo
'๐ŸŒŠ Infra/CI · CD' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก