강의

멘토링

로드맵

BEST
개발 · 프로그래밍

/

데브옵스 · 인프라

애플리케이션 배포 자동화와 CI/CD

강의를 통해 애플리케이션 배포 자동화를 경험 할 수 있습니다. 프로젝트를 배포해보면서 젠킨스 사용 방법과 CI/CD에 대한 기본 지식도 얻어갈 수 있습니다!

(4.5) 수강평 17개

수강생 479명

  • 이준형(Foo)

먼저 경험한 수강생들의 후기

이런 걸 배울 수 있어요

  • Jenkins

  • 배포 자동화

  • CI/CD 테스트

"딸깍" → 배포 완료

애플리케이션을 배포하는 일이 이렇게 간단할 수 있다면 얼마나 좋을까요? 이제는 수동 배포에서 벗어나 배포 자동화와 CI/CD(지속적 통합 및 배포)의 중요성을 실감할 때입니다. 제가 혼자 개발할 때와 지금의 큰 차이점 중 하나가 바로 배포 과정의 효율성입니다. 혼자 개발할 때는 수동 배포도 큰 문제가 되지 않았지만, 실제 현업에서는 신속하고 안정적인 배포가 필수입니다. 많은 개발자와 협업하고, 빈번한 코드 변경이 이루어지는 환경에서는 배포 자동화가 필수적이기 때문입니다.

실제로 애플리케이션이 잘 동작하더라도 배포 과정이 복잡하고 비효율적이라면, 이는 전체 시스템의 장애 포인트가 될 수 있습니다. 배포 중에 발생하는 문제로 인해 서비스가 중단되거나 오류가 발생하면 사용자에게 나쁜 경험을 줄 수 있겠죠.

이 강의에서는 이러한 문제를 해결하기 위해 Jenkins를 사용한 배포 자동화, 무중단 배포 설정, CI/CD 파이프라인 구축 방법을 다룹니다. Jenkins를 활용해 배포 프로세스를 자동화하고, nginx를 사용해 API 서버에 대한 무중단 배포 환경을 만들고, CI 테스트와 CD 롤백 전략까지 다루고 있습니다.

물론 배포 자동화와 CI/CD는 처음부터 완벽하게 구현하기는 어렵습니다. 그러나 이 강의를 통해 배포 자동화와 CI/CD의 기본 개념을 배우고, 여러분들의 프로젝트와 팀 내 프로젝트에도 적용해보기에는 충분할 겁니다. 강의가 끝나고 나면 여러분들의 프로젝트에 맞는 배포 자동화 방법도 여러분들 스스로 고민해보고 직접 구현해낼 수도 있을겁니다.


Jenkins 파이프라인 작성을 통한 배포 자동화와 CI/CD 환경 구성


이런 내용을 배워요

Jenkins

Jenkins는 오픈 소스 자동화 서버로서, 다양한 플러그인을 통해 CI/CD 파이프라인을 구축하고 관리하는 데 사용됩니다. 이 강의에서는 Jenkins 서버를 세팅하고, 배포 환경을 설정하며, WebHook을 활용한 배포 자동화를 구현하는 방법을 배웁니다.

무중단 배포

무중단 배포는 서비스의 중단 없이 새로운 버전의 애플리케이션을 배포하는 방법입니다. 이를 통해 사용자에게 끊김 없는 서비스를 제공할 수 있습니다. 강의에서는 nginx를 활용한 무중단 배포 환경을 만들고, 이를 테스트하는 방법을 학습합니다.

CI/CD

CI/CD는 소프트웨어 개발의 자동화된 프로세스를 통해 코드 변경 사항을 자주 그리고 안정적으로 배포하는 방법입니다. 이 강의에서는 CI와 CD의 개념을 이해하고, CI 테스트 코드를 작성 및 설정하며, CD 과정에서 발생할 수 있는 문제를 해결하는 방법을 다룹니다.

수강 전 참고 사항

실습 환경

  • 운영 체제 및 버전(OS): Windows 10,

  • 사용 도구: Intellij Community 2023.2, Google Chrome



학습 자료

선수 지식 및 유의사항

  • 클라우드 서비스는 Vultr이라는 서비스를 사용하고 있으나, AWS나 GCP등 다른 클라우드 서비스를 사용해도 됩니다. 다만 다른 클라우드 서비스 사용시 방화벽 설정 등 일부 차이가 있을겁니다. 그러나 이런 문제는 여러분들이 직접 검색해보고 몸으로 부딪혀보면 더 많이 얻어갈 수 있을거라고 생각합니다.

  • 스프링 부트로 만들어진 애플리케이션을 기준으로 실습을 진행하지만, 일부 스크립트만 수정하면 다른 언어, 다른 프레임워크에도 적용 가능합니다. 궁금한 내용 있으면 질문 남겨주세요. 제가 도와드릴 수 있는 한 최대한 도와드리겠습니다.


  • 수강하시면서 궁금한 내용이 있다면 질문을 남겨주세요. 업데이트해야 할 내용이 있다면 업데이트하겠습니다.


이런 분들께
추천드려요

학습 대상은
누구일까요?

  • 수동으로 애플리케이션을 배포할 순 있지만 자동으로 배포할 수 있는 방법에 대해 배우고 싶은 사람

  • 배포 자동화의 개념 자체는 이미 알지만 젠킨스를 통해 빠르게 배포 자동화 환경을 만들고 싶은 사람

  • CI/CD 프로세스가 왜 필요한지 알고 싶은 사람

선수 지식,
필요할까요?

  • 수동 배포를 해본 경험

  • Git, GitHub 사용 경험

안녕하세요
입니다.

5,415

수강생

248

수강평

111

답변

4.9

강의 평점

9

강의

안녕하세요.

멘토링을 하면서 주니어 개발자들이 어려워 하는 개념들에 대해 어떻게 하면 쉽게 전달할 수 있을지에 대해서 많은 고민을 하고 있는 푸(Foo)라고 합니다.

잘 부탁 드리겠습니다.


이력

  • 2019. 08 ~ 현재 : 카카오 자바 백엔드 개발자

  • 2021. 08 ~ 현재 : programmers 백엔드 데브코스 멘토

  • 2021. 12 ~ 현재 : F-Lab 자바 백엔드 멘토

 

  • 이것이 취업을 위한 백엔드 개발이다 with 자바(링크)

 

기타 이력 및 타 플랫폼 강의들은 아래 GitHub 링크에서 확인할 수 있습니다.

GitHub - https://github.com/lleellee0

커리큘럼

전체

20개 ∙ (2시간 56분)

강의 게시일: 
마지막 업데이트일: 

수강평

전체

17개

4.5

17개의 수강평

  • 채종훈님의 프로필 이미지
    채종훈

    수강평 7

    평균 평점 5.0

    5

    55% 수강 후 작성

    기존 젠킨스 파이프라인을 활용하는 강의들은 기본적인 사항부터 시작해 많은 기능을 사전에 설명하며 진행하려 합니다. 이 강의의 장점이자 단점은 그런 깊은 부분을 생략하고 간다는 것인데 초급 강의임을 감안하면, 여기서 먼저 사용하는 법을 익히고 그 다음 좀 더 깊은 이해를 하는 방식도 좋다고 생각합니다. 짧은시간에 숏컷으로 활용하는 법을 배울 수 있다는 점이 장점이고, 파이프라인의 장점인 디테일한 단계별 처리라는 강점을 제대로 실습해 볼 수 있어서 좋았습니다. 당장 내일부터 업무에 젠킨스 파이프라인을 쓰셔야 하는 분들 혹은 취준하며 본인 포트폴리오를 고도화시킨 배포방식으로 마무리짓고 싶은 분들에게 강력추천합니다.

    • 이준형(Foo)
      지식공유자

      채종훈님 정성스러운 수강평 감사합니다!! 수강 고민하는 다른 분들께도 도움이 될 것 같습니다. ㅎㅎ

  • charo님의 프로필 이미지
    charo

    수강평 9

    평균 평점 4.8

    5

    75% 수강 후 작성

    2~3시간 정도 강의다 보니, 세세한 부분에서는 설명이 다소 짧긴 하지만 무 중단 배포를 한번 경험해 볼 수 있는 강의라고 생각합니다. 사전에 docker 사전 지식이 어느 정도 있으면 들으실때 조금 수월하다고 생각합니다. 강의 자체를 일부러 오류가 있는 스크립트로 진행하고 그 뒤에 오류를 해결해 나가는 방식이기 때문에 저는 재밌게 들었습니다.

    • 문경민님의 프로필 이미지
      문경민

      수강평 1

      평균 평점 3.0

      3

      30% 수강 후 작성

      • syhan7516님의 프로필 이미지
        syhan7516

        수강평 10

        평균 평점 5.0

        5

        30% 수강 후 작성

        • 이준형(Foo)
          지식공유자

          syhan7516님 수강평 남겨주셔서 감사합니다~ :)

      • 유희준님의 프로필 이미지
        유희준

        수강평 39

        평균 평점 5.0

        5

        30% 수강 후 작성

        • 이준형(Foo)
          지식공유자

          유희준님 수강평 남겨주셔서 감사합니다!!

      ₩27,500

      이준형(Foo)님의 다른 강의

      지식공유자님의 다른 강의를 만나보세요!

      비슷한 강의

      같은 분야의 다른 강의를 만나보세요!