반응형
목차
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를 다운로드 받겠다. 라는 의미
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
터미널에서 도커 내부 젠킨스로 들어가기
반응형
'CICD > Jenkins + CI&CD' 카테고리의 다른 글
Jenkins를 이용한 CI/CD 자동화 도구 사용 (0) | 2022.10.26 |
---|---|
Jenkinks를 이용한 CD/CD Pipeline 구축 (0) | 2022.10.17 |