728x90

Jenkins란?

  • 오픈소스 자동화된 서버(controller / master)
  • 자동화된 CI/CD 도구 : DevOps integrator
    • building, testing,delivering, deploying s/w
  • 1000개 이상의 plugin, Java 기반
  • maven/java project와 맞는다

장점

  • 개발자에게 빠른 피드백
  • 개발자가 문제를 찾고 고치기에 쉬움
  • 개발자 생산성 향상
  • 코드 퀄리티 향상
  • integration 과정을 자동화함
  • s/w release 프로세스 자동화
  • s/w 업데이트 release를 더 빠르게 할 수 있다.
  • Jenkinsfile을 통한 자동화된 CI/CD pipeline

Jenkins 특징

  • Jetty web server에 연동되어 웹서비스 형식으로 Jenkins 서비스 제공
    • Jenkins를 깔면 jetty가 같이 깔리고 request는 웹서버로 온다.
    • default port #가 8080
    • 실제에서 jenkins를 사용할때 기기이름:8080을 하면 jetty라는 서버가 받는다.
    • Jenkins가 일을 하고 최종 결과를 html로 바꾸는 역할을 한다.
  • Maven 등 build tool 연동
  • Selenium 등 test tool 연동
  • Container를 k8s cluster에 deploy
  • 1000개 이상의 자동화 툴 plugin 존재
  • 다양한 notification 툴 연동 - Jabler, IRC, Desktop notification …

+ Recent posts