76일차

장민우·2024년 7월 24일

파이프라인


스크립트 파이프라인

아이템 생성.

Pipeline 작성. -> 지금 빌드.

선언적 파이프라인


  • agent 섹션: 전체 파이프라인 또는 특정 단계가 실행되는 노드 지정
  • stages 섹션: 하나 이상의 순서가 있는 stage 묶음
  • steps 섹션: stage 지시문에서 실행할 하나 이상의 작업
  • post 섹션: stages 또는 stage의 마지막에 실행할 추가 작업

아이템 생성.

Pipeline 작성. -> 지금 빌드.


서술적 파이프라인 구조: 지시문


  • environment: 환경 변수 정의, 자격증명 참조
  • options: 빌드 옵션
  • parameters: 파이프라인에서 정의 및 참조할 수 있는 파라미터
  • triggers: 파이프라인을 자동으로 실행 할 트리거
  • stage: stages 섹션에 정의하는 작업 정의
  • tools: 파이프라인에서 사용할 도구 정의
  • input: stage에서 사용자 입력 값 요청 정의
  • when: stage에서 step을 실행하기 위한 조건 정의

파이프라인 + Maven + Tomcat 작업구성


아이템 생성.

Pipeline 작성.

가상머신에서 work 디렉토리 생성 한 후.

#vim Jenkinsfile

(지난 날 했던 톰캣 설정이 되어있어야 함.)

#git add .
#git commit -m "Add Jenkinsfile"
#git push

젠킨스에서 지금 빌드.

접속 확인.


Jenkins Node 구성 실습


젠킨스 노드 가상머신에서
#sudo apt-get update
#sudo apt-get install openjdk-17-jdk maven

#sudo useradd jenkins -m -d /var/lib/jenkins/ -s /bin/bash
#sudo passwd jenkins

젠킨스 -> 젠키스 관리 -> 노드 -> new Nodes



Credentails Add 눌러서 추가.

확인 후 SAVE

젠킨스 가상머신에서 Jenkinsfile의 agent 부분 변경.



도커


도커 설치

도커 설치: https://docs.docker.com/engine/install/ubuntu/
인덱스 업데이트 및 기본 패키지 설치
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg lsb-release

GPG키 설치

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

패키지 저장소 설정

echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"(. /etc/os-release && echo "VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

패키지 설치

sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

일반 사용자에게 docker 명령 실행 권한 부여

sudo usermod -aG docker $USER



#docker image build -t mywebserver:v1.0 .
#docker container run -d --name test-web mywebserver:v1.0

0개의 댓글