[Jenkins][KDT 2차 프로젝트] Dockerize 배포
·
DevOps🚚/Jenkins
깃 클론 > Jenkins에서 Dockerfile을 통해 이미지화 > DockerHub에 이미지 업로드 > Jenkins exec shell을 사용해 각 애플리케이션에 배포1. 도커 이미지화1.2 Dockerfile# Dockerfile# 기본 이미지를 설정합니다FROM openjdk:17-jdk-slim# 작업 디렉토리 생성WORKDIR /app# Gradle 빌드에서 생성된 JAR 파일을 컨테이너로 복사합니다COPY /build/libs/inclass-spring-security-0.0.1-SNAPSHOT.jar /app/inclass-spring-security-0.0.1-SNAPSHOT.jar# JAR 파일 실행ENTRYPOINT ["java", "-jar", "inclass-spring-secu..
[Jenkins][KDT 2차 프로젝트] Jenkins Pipeline : Rolling
·
DevOps🚚/Jenkins
1. 롤링 코드pipeline { tools { gradle "GRADLE" } agent any stages { stage('Clone') { steps { git branch: 'master', url: 'https://github.com/nayeo2/KDT_prj_application.git' } } stage('Set Permissions') { steps { sh 'chmod +x ./gradlew' } } stage('Test') { steps { ..
[Jenkins] Rolling, Blue/Green 배포
·
DevOps🚚/Jenkins
1. 롤링 배포애플리케이션이나 서비스의 새로운 버전을 점진적으로 배포하는 방식한 번에 업데이트하는 대신에 시스템의 일부 인스턴스나 서버를 순차적으로 교체하여 배포하는 방법1.2 롤링 배포의 주요 특징무중단 배포일부 서버가 업데이트 되는 동안 다른 서버는 계속해서 트래픽을 처리하기 때문에 중단이 일어나지 않는다롤백 (Rollback)배포에 실패하면 이전 상태로 되돌리는 방식이며, 롤링 배포에는 롤백을 적용할 수 있어 안정성이 있다.2. 블루그린 배포애플리케이션의 새로운 버전을 배포할 때, 두 개의 환경을 사용하여 무중단 배포를 가능하게 하는 방식현재 운영 중인 환경과 동일한 복제 환경을 만들어 새로운 버전을 배포하고, 충분한 테스트 후에 트래픽을 새 버전으로 전환하는 방식2.1 블루그린 배포의 주요 특징무..
[Jenkins] [KDT 2차 프로젝트] WebHook 설정
·
DevOps🚚/Jenkins
1. 깃허브에서 token 발급github > Settings > Developer Settings > Personal access tokens > Tockens (classic) > Generate new token (classic)웹훅 설정할 레포지토리의 Settings > Webhooks2. 젠킨스 파이프라인에서 WebHook 설정다른 Build에 WebHooks 설정은 풀어야 한다Dashboard > Jenkins 관리 > Credentials > (Stores scoped to Jenkins 하단의 (global)) > Add Credentialspwd 에는 토큰 값을 넣어줘야합니다.프로젝트 > 구성 > GeneralSuccess!
[Jenkins][KDT 2차 프로젝트] Pipeline 단순 배포
·
DevOps🚚/Jenkins
0. 기본 세팅0.1 Gradle 세팅Dashboard > Jenkins 관리 > ToolsGradle을 GRADLE로 변수를 짓는 느낌이라 Pipeline 코드에서는 GRADLE을 호출해야 함.0.2 SSH agent 설치Dashboard > Jenkins 관리 > Plugins > Avaliable plugins > ssh agent 검색0.3 Jenkins key 발급Dashboard > Jenkins 관리 > Credentials > System > Global credentials1. Pipeline Script : 단순배포def deployApp(String targetServerIp) { def jarPath = 'build/libs/inclass-spring-security-0.0.1..
[Jenkins] 깃 클론해서 Pipeline 구축하기
·
DevOps🚚/Jenkins
Pipeline syntaxpipeline {tools { gradle "GRADLE" // Jenkins에서 설정한 Gradle의 이름} agent any stages { stage('Clone') { steps { [여기에 syntax에서 생성된 스크립트 입력하기] } } stage('Build') { steps { sh 'pwd' sh 'ls' sh './gradlew clean build' sh 'ls ./build/libs' } ..
[Jenkins] Pipeline
·
DevOps🚚/Jenkins
젠킨스 파이프라인코드로서의 파이프라인을 지원하는 기능빌드, 테스트, 배포 등의 소프트웨어 개발 프로세스를 코드로 정의할 수 있게 한다. 파이프라인의 주요 구성 요소Pipelinepipeline { ...}Agent: 파이프라인의 각 단계를 실행할 노드를 정의한다. any라면 가용한 모든 에이전트에서 실행된다agent anyStages: 파이프라인을 여러 단계로 나눈다. 각 단계는 특정 작업 (빌드, 테스트, 배포 등)을 수행한다stages { stage('Build') { steps { echo 'Building...' } } stage('Test') { steps { echo 'Testing...' } } stage('Deploy') { ..
nayeo2
'DevOps🚚/Jenkins' 카테고리의 글 목록