저번에 Spring boot의 Maven Project로 배포를 하였다.
요즘은 gradle도 많이 쓰기 때문에, 나중에 꼭 알아둬야 할 것 같아서 gradle로 한번 배포해 본다
1. Project 생성
Spring boot 툴에서 오른쪽 클릭한 후, 【New】→【Project】 을 클릭한다
【Spring Starter Project】 선택 후, 【Next】 클릭
이런 화면이 생기는데, Name 넣어주고, Gradle 기준으로 하기 때문에 Gradle 으로 설정한 후,
Packaging은 Jar로 해도 되고, War로 해도 된다.
그리고 다들 1.8 버전을 자주 쓰기 때문에, 8로 선택한다.
Package명은 <<폴더>>.<<폴더>>.<<폴더>>로 적은 뒤, 【Next】 를 클릭하도록 한다
그다음 체크는 위와 최소한 좋은 것들 선택하고 【Finish】 를 클릭한다. 그럼 프로젝트가 생성이 완료된다.
※DB 같은 경우는, Oracle 쓰고 싶은 사람은 Oracle을 선택하고, MySQL을 하고 싶은 사람은 MySQL를 선택하면 된다.
어차피 여기서는 안 할 것이다
2. application.yml
【application.properties】를 【application.yml】로 바꾼다.
안 바꿔도 되지만, 내 말 듣는 게 좋다
* 장난이고,, 검색해주세요. ㅠㅠ
server:
port: 8080
servlet:
context-path: /
최소한의 정보를 넣어 주도록 한다.
그 밑에 DB라던지 JPA라던지 그런 것을 넣어줘도 될 듯하다.
일단 배포를 확인하기 위해 더 이상 헷갈리게 하지 않기 위해 적지 않았다
3. Controller 작성
【New】→【Other】
패키지를 하나 만들어 준다
패키지 이름 설정한 후에 【Finish】 클릭
package 오른쪽 클릭 후, class를 만들어 준다
이름을 설정하고 【Finish】를 클릭한다
이번 포스팅은 React를 위한 것이기 때문에
데이터를 return 해주게 하기 위한 어노테이션 【@RestController】 를 넣어주고
위에 메소드를 넣어준다
이렇게 힘들게 다 준비하면 끝이다. 그다음은
jar
파일을 만들어보자
4. build.gradle 설정
bootJar {
archiveBaseName = '-'
archiveFileName = 'test.jar'
archiveVersion = '0.0.0'
}
위의 코드를 넣어준다.
이걸 실행시키면, 【test.jar】라는 파일을 뱉어 낼 것이다.
5. Jar 파일 익스포트
【Show in Local Terminal】→【Terminal】 클릭하면, 콘솔 창에 터미널이 열린다
* 안될 시 직접 cmd 창을 열어서 하도록 하자
// Window
gradlew.bat bootJar
// Linux
./gradlew bootJar
라고 입력을 해준다
이렇게 하면 jar파일이 생성된다
경로는 아래와 같다
<<프로젝트파일>>/build/libs/<<생성된jar파일>>
그 경로로 가서 jar파일을 실행시켜본다
java -jar test.jar
그럼 터미널 창에서 이런 문자들이 나오면 성공한 거나 다름없다
그다음 localhost로 접속하면 접근이 가능하다
6. EC2에 Jar파일 올리기
【Session】 을 클릭한다
【퍼블릭 IPv4 주소】를 복사 한 다음
복잡 하지만, 순서대로 한다
그럼 이렇게 뜬다
test.jar 를 EC2서버에 올린다
7. Tomcat 서버 구동
java -jar test.jar
로컬에서 실행하듯이 EC2서버에서도 이렇게 실행한다
그리고 해당 IP주소:8080/helloWorld 로 접속하면 완성이다