티스토리 뷰
How To Install and Use Jenkins on Ubuntu 14.04 LTS
CI ( Continuous Integration ) 의 컨셉은 개발 -> 빌드 -> 테스트 -> 배포의
절차를 통한 지속적 통합과정을 자동화 하기 위함이다.
CI를 지원하는 여러가지 툴이 존재하며, 대중적으로 많이 쓰이는 툴로 Hudson 이 있으나
저작권 문제로 Jenkins라는 이름으로 fork되었다.
( Node.js가 io.js로, MySQL이 MariaDB로 fork된 바와 같이.. )
본 포스팅에서 GIT Repository 소스 빌드 및 tomcat 배포까지의 프로세스를 테스트 하였다.
step 1. 설치 방법
jenkins repository 등록 및 update후에 설치를 진행한다.
$ wget -q -O - https://jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
$ sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
$ sudo apt-get update
$ sudo apt-get install jenkins
step 2. GIT Plug-in 설치
git이 대중화 되어있다지만 plug-in설치는 안되어 있으므로 따로 설치를 해줘야한다.
아래 그림을 통해 git plug-in 설치 과정을 확인한다.
[그림 1] Repository 설정
플러그인 관리를 통해 다양한 Plug-in을 설치할 수 있다.
이곳에서 Git Plug-in을 설치한다.
[그림 2] 플러그인 관리
[그림 3] Git Plug-in 체크
[그림 4] Plug-in 설치
[그림 5] 설치 및 Jenkins 재시작
[그림 6] 소스코드 관리 확인
위 과정을 통해 GIT Plug-in 설치 과정을 알아 보았다.
* 사설 인증서 사용지 SSL Certification에 문제가 발생 할 수 있으므로
jenkins 계정의 git sslVerify false 설정을 한다.
git config --global http.sslVerify false
step 3. Maven 설정
아래의 이미지 순서대로 수행한다.
[그림 7] Jenkins 관리
[그림 8] 시스템 설정
[그림 9] Maven 설정
MAVEN_HOME을 설정방법
$ sudo apt-get install maven
$ readlink -f /usr/bin/mvn
/usr/share/maven2/bin/mvn
readlink로 확인된 경로를 MAVEN_HOME으로 등록한다.
step 4. Build 진행
이제 해당 프로젝트의 빌드를 진행 한다.
[그림 10] Build Now
[그림 11] Console Output Log 확인
[그림 12] Console Output Log 확인
[그림 13] Build Success 확인
[그림 14] Deploy to container Plugin 설치
[그림 15] 빌드 후 조치 설정
tomcat-users.xml 에 manager-script role 추가
<tomcat-users>
<role rolename="manager-script"/>
<role rolename="manager-gui"/>
<user username="admin" password="1234" roles="manager-gui, manager-script"/>
</tomcat-users>
* jenkins와 tomcat 포트가 겹칠 수 있으므로 변경 시 /etc/tomcat7/server.xml 파일의 Http Connector 수정
[그림 16] 빌드 및 톰캣 배포 확인
이상 Jenkins를 이용한 간단한 빌드 과정에 대해 알아보았다.
'Developer' 카테고리의 다른 글
[AWS#1] How to using Amazon Web Service free tier (1 year) (0) | 2015.03.04 |
---|---|
[JAVA] SSL Handshake (인증서) 오류. (2) | 2015.02.03 |
[MongoDB#2] How To Create a Sharded Cluster in MongoDB Using an Ubuntu 14.04 LTS (0) | 2015.01.15 |
[Python#3] Korean Natural Language Processing for Using KoNLPy ( Korean NLP in Python ) (0) | 2014.12.21 |
[Ajax] Crossdomain Problem. (0) | 2014.12.17 |
- Total
- Today
- Yesterday
- Python
- 여행
- ubuntu
- 비지니스 영어
- redis
- NGINX
- maven
- 조동사
- memcached
- Business English
- 가정법
- 해외여행
- AWS
- nodejs
- 대명사 구문
- 베트남
- 다낭
- k8s
- 도덕경
- hadoop
- it
- 비교구문
- Python Django
- JBOSS
- mongoDB
- hdfs
- 영문법
- PostgreSQL
- 스페인 여행
- 영작
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |