Jenkins 런타임 환경 및 의존성 구성
Jenkins 는 자바 기반의 자동화 빌드 서버이므로, 운영체제 레벨에 먼저 JVM(Java Virtual Machine) 이 정상적으로 적용되어 있어야 합니다. CentOS 계열 리눅스 환경에서의 수동 설치 절차를 안내합니다.
1. OpenJDK 또는 Oracle JDK 설치
시스템 경로에 별도의 디렉토리를 할당하여 JDK 파일을 배치하는 방식입니다. 예시에서는 /opt 아래에 루트 경로를 지정하여 관리 편의성을 높였습니다.
# 설치 기준 변수 정의
TARGET_DIR="/opt/java_runtime"
JAVA_VERSION="jdk-8u202-linux-x64"
# 1. 다운로드 폴더 생성 및 파일 이동 (파일은 직접 획득 후 업로드 가정)
mkdir -p $TARGET_DIR
mv $JAVA_VERSION.tar.gz $TARGET_DIR/
# 2. 압축 해제 및 실행권한 설정
cd $TARGET_DIR
tar -xzf ${JAVA_VERSION}.tar.gz
# 3. 시스템 전체 환경변수 등록 (profile.d 활용 권장)
echo "export JAVA_HOME=$TARGET_DIR/${JAVA_VERSION}" | tee /etc/profile.d/java_config.sh
echo "export PATH=\$JAVA_HOME/bin:\$PATH" >> /etc/profile.d/java_config.sh
echo "export JRE_HOME=\$JAVA_HOME/jre" >> /etc/profile.d/java_config.sh
echo "export CLASSPATH=.:\$JAVA_HOME/lib:\$JRE_HOME/lib" >> /etc/profile.d/java_config.sh
# 4. 변경 사항 즉시 반영 및 링크 생성
source /etc/profile.d/java_config.sh
ln -sf $TARGET_DIR/${JAVA_VERSION}/bin/java /usr/bin/java
2. 추가 개발 도구 확보
코드 관리 툴인 Git 이 기본적으로 포함되지 않은 경우 yum 을 통해 패키지를 로드합니다.
yum install -y git
Jenkins 본체 설치 및 커스터마이징
공식 소프트웨어 저장소를 등록하여 안정된 버전의 RPM 팩스를 가져옵니다. 로컬 RPM 파일로 직접 설치하는 대안도 존재하나, 유지보수를 위해 레포지토리 방식을 권장합니다.
1. 공식 저장소 연동 및 패키지 로드
# 최신稳定的 레포지토리 정보 불러오기
curl -L https://pkg.jenkins.io/redhat-stable/jenkins.repo -o /etc/yum.repos.d/jenkins.repo
# 신뢰할 수 있는 키 인증서 적용
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
# 자동 승인 옵션으로 패키지 설치 진행
yum install -y jenkins
2. 서비스 동작 매개변수 조정
기본 설정을 수정하여 네트워크 포트를 명확히 지정하고, 테스트 환경에서의 권한 이슈를 해결하기 위해 실행 주체를 변경할 수 있습니다.
# 시스템 구성 파일 편집
nano /etc/sysconfig/jenkins
# 다음 라인들을 확인하거나 수정합니다.
# LISTEN_PORT="9090" # 충돌 방지를 위한 포트 변경 (예시)
# JENKINS_USER="root" # 일반적인 jenkins 사용자와는 다르게 설정 (주의 필요)
3. 데이터 디렉토리 소유자 변경
서비스가 정상 실행되도록 관련 로그 및 캐시 디렉토리의 소유권을 명시적으로 부여합니다.
chown -R :jenkins /var/lib/jenkins
chown -R :jenkins /var/cache/jenkins
chown -R :jenkins /var/log/jenkins
chmod 755 /var/lib/jenkins
서비스 시작 및 초기 연결 절차
데몬 프로세스를 기동한 후 웹 인터페이스를 통한 진입이 가능한지 검증합니다. 만약 자바 경로 인식 오류가 발생하는 경우 전역 경로 설정을 다시 점검해야 합니다.
1. 데몬 활성 상태 확인
# systemctl 을 이용한 서비스 제어
systemctl start jenkins
systemctl enable jenkins
systemctl status jenkins
# 프로세스 목록을 통해 실행 여부 시각화
ps aux | grep [j]ava
2. 관리자 접근용 암호키 조회
최초 접속 시 필요한 보안 코드는 설치 경로 내부의 비밀 파일로부터 추출됩니다.
cat /var/lib/jenkins/secrets/initialAdminPassword
3. 브라우저 통한 초기 설정
서버 IP 주소와 설정된 포트 번호를 조합하여 HTTP 프로토콜로 접근하면 초기 설정 마법사가 실행됩니다. 여기서 제안되는 플러그인 집합을 선택하거나 커스텀 플러그인을 도입할 수 있으며, 최종적으로 슈퍼바이저 계정을 생성하여 시스템을 완전히 가동할 수 있게 됩니다.