반응형

목차

    WaterFall vs Agile vs DevOps

    WaterFall

    요구사항정의->분석/설계->구현->테스트->운영

    Agile

    WateFall을 보완하고자 생겨난 SW방법론

    Cloud Native - Containerzation

    Cloud Native - DevOps

    • Development + Operations
    • 지속적인 통합 및 배포 운동 -> CI, CD
    • 엔지니어가 프로그래밍하고, 빌드하고, 직접 시스템에 배포 및 서비스를 RUN
    • 사용자와 끊임 없이 Interaction하면서 서비스를 개선해 나가는 일련의 과정, 문화

    각 서비스별 주로 사용하는 Tool

    \

    Cloud Native - CI/CD

    • CI(Continuous Intergration)
    • CD(Continuous Delivery)
    • CD(Continuous Deployment)

    CI/CD Flow

    • ANSIBLE/TERAFORM 같은 경우는 로컬 환경에서 배포하고 운영에선 aws로 해본다.

    Deploy On Docker Using Jenkins

    sonarQube : jenkins에서 지원하는 정적 테스트 도구

    Amazon ECR : 도커 허브 같은 것

    Jenkins

    • 지속적인 통합과 배포 -> Work Flow를 제어
    • Continuous Integration Server
      • Continuous Developmnet, Build, Test, Deploy
    • 다양한 Plugin 연동
      • Bild Plugin : Maven, Ant, Gradle...
      • VCS Pluginb : git, svn
      • Languages Plugins : Java, Python, Node.js...

    Step1) Dock destTop 설치하기 https://www.jenkins.io/download/

    Step2) pull docker jenkins 

    jenkins/jenkins란?
    만들고자하는 계정Id/Jenkins Repository
    docker pull jenkins/jenkins?
    docker에서 jenkins계정의 jenkins Repo를 다운로드 받겠다. 라는 의미

    docker pull jenkins/jenkins

    step3) docker run -p 8080:8080 -p 50000:50000 --restrart=on-failure jenkins/jenkins:lts-jdk11

    • 8080:8080 : 컨테이너 밖 쪽에서 8080포트를 사용하면 컨테이너 내부로 8080접속이 되겠다.
    • 50000:50000 : 컨테이너 외부에서 50000번을 입력하면 컨테이너 내부에서 50000번을 응답하겠다는 의미 
    • estrart=on-failure  : restart이 on 이면 failure를 하겠다는 의미
    • jenkins:lts-jdk11 : 버전
    • -v 옵션 : 연결 작업 설정(마운트 작업)
    • -d 옵션 : 데몬으로 백그라운드에서 돌게 끔 하겠다는 의미, 터미널을 종료해도 도커는 떠 있음

    Step4) docker를 띄었다면 localhost:8080 접속하기

    • 비밀번호는 docker logs 에서 확인하기

    • plug in 설치 - 모든 플러그인 설치

    • Create First Admin User

    • jenkins 실행 완료 (localhost:8080)

    Step5) Jenkins Item 생성

    • FreeStyle Project로 생성

    • Build 설정하기

    Build Steps -> execute shell

    • Shell 입력하기

    우리의 jenkins는 Linux위에 docker에서 동작하고 있기 때문에 Linux의 shell명령어를 이용하여 build 설정을 할 수 있다.

     

    도커 터미널 커멘드

    • docker ps

    도커 돌아가고 있는지 확인

    • docker logs [컨테이너ID] - ad8afa98d44a4c478feeb9807144433c

    도커의 정보확인 (비밀번호 확인)

    • docker exec -it 9fbe23d2df0e bash

    터미널에서 도커 내부 젠킨스로 들어가기

    반응형

    + Recent posts