[CI/CD] CI/CD๋ž€?

2025. 1. 16. 22:25ยทCICD

CI/CD๋ž€?

CI/CD๋Š” Continuous Integration(์ง€์†์  ํ†ตํ•ฉ)๊ณผ Continuous Delivery/Deployment(์ง€์†์  ์ „๋‹ฌ/๋ฐฐํฌ)์˜ ์•ฝ์ž์ด๋‹ค.

Continuous Integration(CI)

  • ๊ฐœ๋ฐœ์ž๊ฐ€ ์ฝ”๋“œ๋ฅผ ์ž์ฃผ ํ†ตํ•ฉํ•˜๊ณ , ์ด๋ฅผ ์ž๋™์œผ๋กœ ํ…Œ์ŠคํŠธ ๋ฐ ๊ฒ€์ฆํ•˜์—ฌ ์‹ ์†ํ•˜๊ฒŒ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค.
  • CI์˜ ๋ชฉํ‘œ๋Š” ์ฝ”๋“œ ์ถฉ๋Œ ๋ฐฉ์ง€, ๋น ๋ฅธ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ ์ œ๊ณต, ์ฝ”๋“œ ํ’ˆ์งˆ ํ–ฅ์ƒ์ด๋‹ค.

Continuous Delivery(CD)

  • CI ๊ณผ์ • ์ดํ›„, ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•œ ์ฝ”๋“œ๋ฅผ ์Šคํ…Œ์ด์ง• ํ™˜๊ฒฝ๊นŒ์ง€ ์ž๋™์œผ๋กœ ์ „๋‹ฌํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค.
  • ๋ฆด๋ฆฌ์Šค๋ฅผ ์•ˆ์ •์ ์œผ๋กœ ์ค€๋น„ํ•˜๊ณ , ์ˆ˜๋™ ๊ฐœ์ž… ์—†์ด ๋ฐฐํฌ ๊ฐ€๋Šฅ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ์ด๋‹ค.

Continuous Deployment(CD)

  • Coninuous Delivery์˜ ํ™•์žฅ์œผ๋กœ, ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•œ ์ฝ”๋“œ๋ฅผ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์— ์ž๋™ ๋ฐฐํฌํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์ด๋‹ค.
  • ๋ฐฐํฌ ๊ณผ์ •์˜ ์ž๋™ํ™”์™€ ๋ฆด๋ฆฌ์Šค ์†๋„ ๊ทน๋Œ€ํ™”๊ฐ€ ๋ชฉํ‘œ์ด๋‹ค.
  • ์™„์ „ ์ž๋™ํ™”๋ฅผ ์œ„ํ•ด ์ฒ ์ €ํ•œ ํ…Œ์ŠคํŠธ ์ฒด๊ณ„๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

CI/CD ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์„ฑ ์š”์†Œ

CI/CD๋ฅผ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‹จ๊ณ„๋กœ ๊ตฌ์„ฑ๋œ ํŒŒ์ดํ”„๋ผ์ธ์„ ์„ค๊ณ„ํ•ด์•ผ ํ•œ๋‹ค.

1. ์†Œ์Šค ์ฝ”๋“œ ๊ด€๋ฆฌ

  • Git, GitHub, GitLab ๋“ฑ๊ณผ ๊ฐ™์€ ๋ฒ„์ „ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉ.
  • ๋ธŒ๋žœ์น˜ ์ „๋žต ์ˆ˜๋ฆฝ.

2. ๋นŒ๋“œ

  • ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๋ณ€ํ™˜.
  • ์ž๋™ํ™” ๋„๊ตฌ: Maven, Gradle, npm ๋“ฑ.

3. ํ…Œ์ŠคํŠธ

  • ๋‹จ์œ„ ํ…Œ์ŠคํŠธ, ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ, E2E ํ…Œ์ŠคํŠธ ์‹คํ–‰.
  • ํ…Œ์ŠคํŠธ ์ž๋™ํ™” ๋„๊ตฌ: JUnit, Selenium, Jest.

4. ๋ฐฐํฌ

  • ํ…Œ์ŠคํŠธ ํ›„ ์ฝ”๋“œ๋ฅผ ์Šคํ…Œ์ด์ง• ๋˜๋Š” ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์œผ๋กœ ๋ฐฐํฌ.
  • ๋ฐฐํฌ ๋„๊ตฌ: Docker, Kubernetes, Ansible, Terraform.

5. ๋ชจ๋‹ˆํ„ฐ๋ง

  • ๋ฐฐํฌ ํ›„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒํƒœ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ™•์ธ.
  • ๋ชจ๋‹ˆํ„ฐ๋ง ๋„๊ตฌ: Prometheus, Grafana, ELK Stack.

CI/CD์˜ ์ค‘์š”์„ฑ

  • ๊ฐœ๋ฐœ ์†๋„ ํ–ฅ์ƒ: ์ฝ”๋“œ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ๋น ๋ฅด๊ฒŒ ๋ฐฐํฌ.
  • ํ’ˆ์งˆ ๋ณด์žฅ: ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ ํ’ˆ์งˆ์„ ์œ ์ง€.
  • ํ˜‘์—… ๊ฐ•ํ™”: ์—ฌ๋Ÿฌ ํŒ€์› ๊ฐ„์˜ ์ฝ”๋“œ ํ†ตํ•ฉ ๋ฌธ์ œ๋ฅผ ์ตœ์†Œํ™”.
  • ์šด์˜ ์•ˆ์ •์„ฑ: ์ง€์†์ ์ธ ๋ฐฐํฌ๋กœ ์•ˆ์ •๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์šด์˜ ๊ฐ€๋Šฅ.

์ฃผ์š” ๋„๊ตฌ ๋ฐ ํ”Œ๋žซํผ

  • CI ๋„๊ตฌ: Jenkins, Travis Ci, CircleCI, GitHub Actions.
  • CD ๋„๊ตฌ: ArgoCD, Spinnaker, Octopus Deploy.
  • ์ข…ํ•ฉ ํ”Œ๋žซํผ: GitLab CI/CD, AWS CodePipeline, Azure DevOps.

CI/CD ๋„์ž… ์‹œ ์œ ์˜์‚ฌํ•ญ

CI/CD ๋„์ž… ์‹œ ์ž๋™ํ™”๋œ ํ…Œ์ŠคํŠธ๊ฐ€ ๋ถ€์กฑํ•˜๋ฉด ์˜ค๋ฅ˜๊ฐ€ ๋ฐฐํฌ ๋‹จ๊ณ„๊นŒ์ง€ ๋„˜์–ด๊ฐˆ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฐฐํฌ ๊ณผ์ •์—์„œ ๋ฏผ๊ฐ ์ •๋ณด๊ฐ€ ๋…ธ์ถœ๋˜์ง€ ์•Š๋„๋ก ๊ด€๋ฆฌํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ชจ๋“  ๊ณผ์ •์„ ์ž๋™ํ™”ํ•˜๊ธฐ๋ณด๋‹ค๋Š”, ์ž‘์€ ๋ถ€๋ถ„๋ถ€ํ„ฐ ์ ์ง„์ ์œผ๋กœ CI/CD๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค.

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

'CICD' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[CI/CD] SonarQube๋ž€?  (1) 2025.01.22
[CI/CD] Docker๋กœ Jenkins ์„ค์น˜ํ•˜๊ธฐ  (0) 2025.01.11
'CICD' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [CI/CD] SonarQube๋ž€?
  • [CI/CD] Docker๋กœ Jenkins ์„ค์น˜ํ•˜๊ธฐ
The Engineer, Lucy
The Engineer, Lucy
  • The Engineer, Lucy
    Growing up for My Future๐Ÿ’•
    The Engineer, Lucy
    • Instagram
    • GitHub
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (152) N
      • Computer Science (17)
        • Data Structure (0)
        • Algorithms (1)
        • Operating System (3)
        • Network (11)
        • Database System (2)
      • Coding Test (72) N
        • Algorithms (64) N
        • SQL (7)
      • Infra (6)
      • Cloud (21)
        • AWS (2)
        • GCP (3)
        • Docker (4)
        • Kubernetes (12)
      • Linux (26)
      • NGINX (1)
      • CICD (3)
      • IaC (1)
      • ETC (5)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๊ณต์ง€์‚ฌํ•ญ

  • ๋งํฌ

    • Lucy's Instagram
    • Lucy's GitHub
  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๋„์ปค
    Linux
    programmers
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    Baekjoon
    cs ๊ธฐ์ดˆ ์ง€์‹ ์ •๋ฆฌ
    ์ž๋ฐ”
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ณต๋ถ€
    ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค
    bfs
    ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ 2๊ธ‰
    ๋„คํŠธ์›Œํฌ ๊ธฐ์ดˆ ์ง€์‹
    ๋„ˆ๋น„์šฐ์„ ํƒ์ƒ‰
    dfs
    ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ
    ๋ฆฌ๋ˆ…์Šค
    ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ
    network
    ์…ธ ์Šคํฌ๋ฆฝํŠธ
    Shell Script
    K8s
    ๋ฐฑ์ค€
    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    docker
    Kubernetes
    ์˜ค๋ธ”์™„
    ์‰˜ ์Šคํฌ๋ฆฝํŠธ
    Shell
    Java
    ๋„คํŠธ์›Œํฌ
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
The Engineer, Lucy
[CI/CD] CI/CD๋ž€?
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”