개발/CI'CD

[젠킨스] Jenkins 설치 및 구동

prime9999 2024. 7. 30. 11:06
반응형
/etc/init.d/jenkins start

운영체제 : CentOS8

 

1. 설치작업

 

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key



yum install jenkins

 

2. 설치 완료 후 설정파일 수정

sudo vim /etc/sysconfig/jenkins

 

3. 파일열고 포트 수정

JENKINS_PORT="8080"

 

4. 젠킨스 구동

/etc/init.d/jenkins start

 

5. 프로세스 확인

 

# ps -ef | grep Jenkins

 

6. 방화벽 작업 Jenkins 포트 번호 열어주기

 

iptables -I INPUT 1 -p tcp --dport {열어줄 포트 지정} -j ACCEPT

firewall-cmd --zone=public --add-port={열어줄 포트 지정}/tcp --permanent

firewall-cmd --zone=public --add-service=http --permanent

firewall-cmd --reload

EX) 방화벽 접근 불가능시

 

sudo vim /etc/sysconfig/jenkins

 

7. Jenkins 에서 root 로 변경 후 Restart처리.

 

JENKINS_USER="root" 

/etc/init.d/jenkins restart

unlock jenkins key 위치

 

- /var/lib/jenkins/secrets/initialAdminPassword

8. SSH 자동 배포 작업

ETC) jenkins 빌드 완료 시 /var/lib/jenkins/workspace/프로젝트명/trunk/target/ 에 war 파일 풀림

 

% deploy.sh 쉘 만들기

 

만들 쉘 파일 위치 : /var/lib/jenkins/workspace

 

#!/bin/bash

//기존 war 파일과 폴더 지우기

sudo rm -rf /home/톰캣경로/webapps/ROOT /home/톰캣경로/webapps/ROOT.war

sudo rm -rf /home/톰캣경로/webapps/ROOT /home/톰캣경로/webapps/ROOT.war

sudo rm -rf /home/톰캣경로/webapps/리소스

//젠킨스 빌드 완료된 war 복사해서 was에 배포

sudo cp /var/lib/jenkins/workspace/{프로젝트명}/trunk/target/ROOT.war /home/{톰캣경로}/webapps

%보통 리소스는 프로젝트 내에 같이 들어가 있지만 현재 우리 프로젝트는 리소스를 따로 관리함.

sudo cp -r /var/lib/jenkins/workspace/{프로젝트명}/trunk/src/main/webroot/css /home/{톰캣경로}/webapps/리소스

//현재 우리 프로젝트는 톰캣 자동 재시작이 되어 있어 was 만 꺼준다.

sudo /home/{톰캣경로}/bin/shutdown.sh

sudo /home/{톰캣경로}/bin/shutdown.sh

쉘 파일 작성 후 파일 권한 변경 chmod 755 {쉘 파일명}

chown -R root:root /var/cache/jenkins

chown -R root:root /var/log/jenkins

chown -R root:root /var/lib/jenkins

 

- 젠킨스 보안관련하여 설치가 진행되지 않을 시 하단 플러그인 을 받아서 넣어주면 된다.

- https://updates.jenkins-ci.org/download/plugins/skip-certificate-check/

 

반응형