yoncho`s blog

[Plugin Setting & Jenkins Build] 배포 준비 과정 본문

기술, 나의 공부를 공유합니다./[Web][BE] JAVA

[Plugin Setting & Jenkins Build] 배포 준비 과정

욘초 2023. 10. 11. 20:31

목차

1. Project의 pom.xml 에서 배포를 위해 springboot-maven plugin & tomcat7-maven plugin 선언

2. CentOS (Server OS)의  /.m2 디렉터리에서 settings.xml 작업 

3. Jenkins Project 생성, 설정, 빌드 작업

 


1. Project의 pom.xml 에서 <build> 영역 안에 아래와 같이 선언

<build>
	<finalName>,,,</finalName>
    ...
    <plugins>
       <plugin>
          <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-maven-plugin</artifactId>
       </plugin>
       <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>2.2</version>
          <configuration>
             <url>${tomcat.deploy.url}</url>
             <server>poscodx-tomcat</server>
          </configuration>
       </plugin>
    </plugins>
    ...
</build>

코드 상세 설명

더보기

1. <plugins> : Maven 플러그인 구성이 포함되어있으며, 빌드 프로세스에 사용

2. <plugin> : Spring Boot Maven Plugin으로 아래 구성을 포함.

            <groupId> : 플러그인의 그룹 ID     *org.springframework.boot

            <artifactId> : 플러그인의 아티팩트 ID     *spring-boot-maven-plugin
            <configuration> : 플러그인 구성 시 사용.

                      <excludes> : 특정 종속석을 제외하는데 사용.   *제외할 groupId & artifactId 입력

 

3. <plugin> : Tomcat Maven Plugin으로 아래 구성을 포함.

            <groupId> : 플러그인의 그룹 ID     *org.apache.tomcat.boot

            <artifactId> : 플러그인의 아티팩트 ID     *tomcat7-maven-plugin

....        <configuration> : 

              ........ <url> :  Tomcat 서버에 배포할 때 사용할 URL 지정 (/.m2/settings.xml에 지정)
                       <server> : Tomcat 서버의 ID 지정 (/.m2/settings.xml에 지정)

위 설정은 Maven 프로젝트의 빌드 과정에서 Spring Boot Application을 빌드하고 Tomcat Server에 배포하기 위한 플러그인 구성을 정의한다.

 

 

2. CentOS (Server OS)의  /.m2 디렉터리에서 settings.xml 작업 

"

"/root/.m2/settings.xml" 해당 경로로 settings.xml을 확인할 수 있다.

.m2/settings.xml 은 Apache Maven 설정 파일로, Maven 빌드 도구가 동작할 때 필요한 환경 설정 및 저장소(repository) 정보를 포함하고있다. 그리고 이 파일을 프로젝트 내 pom.xml에서 override 할 수 있다. 그래서 위 1번 설명 처럼 plugin에 url을 override 할 수 있는 것이다.

역할

1) Repository 설정
2) Proxy & Mirror 구성
3) Security 설정

4) Build env. 설정

 

 

3. Jenkins Project 생성, 설정, 빌드 작업

1) 192.168.0.xxx/jenkins 진입

2) 새로운 item 선택 
3) Freestyle project 선택하고 사용자가 프로젝트 이름 지정
4) 소스코드 관리 > Git > git repository url 입력
5) Build Steps 에서 " Invoke top-level Maven targets" 선택

6) Maven Version 은 maven3.8 선택

7) Goals 에 "clean -f mysite04 package tomcat7:redeploy -Pproduction" 입력
단, -f 의 경우 build project가 여러개인 경우 build할 project를 지정해주는 역할로
git repository에 project가 단일이라면 사용할 필요가 없음.
8) Item 생성 후 item으로 들어가서 "지금 빌드" 클릭
9) Build가 완성된 후 URL (192.168.0.xxx/item_name) 접속해 정상 동작 확인

 

Comments