AWS Lightsail 인스턴스에 Jenkins 설치.
1. Java8 설치
AWS의 Linux에는 기본적으로 Java7 (1.7.0) 이 설치 되어있는데, 이를 Java8 (1.8.0) 으로 업데이트 시켜야 함
Jenkins 를 설치할 서버에 쉘로 접속
sudo yum update
sudo yum install -y java-1.8.0-openjdk-devel.x86_64
설치 완료 후, Java8 버전으로 지정
sudo /usr/sbin/alternatives --config java
sudo /usr/sbin/alternatives --config java
현재 설치되어 있는 Java 패키지들이 리스팅 되고, 지정할 패키지를 선택하라고 나옴
2를 입력 후 엔터
Java8로 변경 되었는지 확인
java -version
버전이 정상 변경 되었으면, 사용하지 않는 기존 Java7 삭제
sudo yum remove java-1.7.0-openjdk -y
2. Jenkins 설치
Jenkins 설치파일 다운로드
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
설치 전에 Jenkins Key를 Import 해줘야 함
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
Jenkins 설치
sudo yum install jenkins
Jenkins 실행
/* 젠킨스 실행 */
sudo service jenkins start
/* 젠킨스 실행 확인 */
sudo service jenkins status
3. Apache 또는 Nginx 설정 (외부에서의 접속을 위한 웹서버)
이미 서버가 설치 되어 있다는 가정.
외부에서 Jenkins 에 접속할 수 있도록 웹서버 설정을 해준다.
Jenkins 는 기본포트가 8080 임
예) 브라우저에서 http://jenkins.mydomain.com/ 으로 로 접속 시 연결 되도록
우선 Jenkins 포트 변경
sudo vi /etc/sysconfig/jenkins
Jenkins는 일반 웹페이지처럼 DocumentRoot 로 지정해서 사용하는 형식이 아니기 때문에,
ProxyPass 라는 라이브러리를 이용해서, 외부에서 연결 시도 했을 때 Proxy 연결 해주는 방법을 사용 해야 함
포트를 다른 포트로(9090 등) 으로 변경해서 사용
기본포트(8080)은 다른 프로그램들에서 많이 쓰기 때문에 충돌 우려가 있음
JENKINS_PORT="9090"
Apache 에서 Module 설정
버전마다 설치했을 때, httpd.conf 안에 작성 되어 있을 수도 있음
/* 아래 두 개 주석 제거 (#제거) */
#LoadModule proxy_module module/mod_proxy.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
확인해보니 최신버전(현재기준)은
cd /etc/httpd/conf.modules.d
vi 00-proxy-conf
해당 라이브러리 들이 위 경로에 주석이 풀린 채로 기재되어 있다.
그리고 httpd.conf에는 모든 모듈을 사용하라고 작성되어 있다.
고로 ProxyPass 관련해서 아무것도 안해줘도 된다는 말임
Include conf.modules.d/*.conf
자신의 설치 상태에 맞게 라이브러리를 사용할 수 있게 세팅 해주면 됨
Apache 설정파일에서 HOST 설정
sudo vi /etc/httpd/conf/httpd.conf
<VirtualHost *:80>
ServerName jenkins.mydomain.com
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:9090/
ProxyPassReverse / http://localhost:9090/
</VirtualHost>
Apache 리스타트
sudo service httpd restart
외부에서 접속 시도
위 처럼 Unlock Jenkins 가 뜰 때 해결.
sudo vi /var/lib/jenkins/secrets/initialAdminPassword
위 파일을 확인 해 보면 키가 한 줄 적혀져 있다.
그 한 줄을 복사 후 위 그림에 Adminstrator password 부분에 넣고 하단 Continue 버튼을 클릭하면 정상 진입 성공
위 처럼 뜬다면 성공!
'Jenkins' 카테고리의 다른 글
[Jenkins] 젠킨스 Bitbucket 연동 (0) | 2020.11.13 |
---|---|
[Jenkins] 설치 후 최초 세팅 (0) | 2020.11.13 |