본문 바로가기

DevOps/AWS

[AWS] 3.EC2 WAS에 Git Project Maven Build하기

 

이번 시간에는 EC2 인스턴스 위에 프로젝트를 빌드하고, 외부 접속이 가능하도록 포트를 개방하는 작업을 하겠습니다. 작업 순서는 다음 순서와 같습니다. 자 시작해볼까요?

 

1. jdk, tomcat 설치

2. yum을 통해 GIT 설치

3. GIT clone 프로젝트

4. Maven 설치 - compile -package

 

 

 

 

 

 1. jdk 설치, 톰캣 설치


1-1-1. java version을 확인합니다.

현재 EC2 인스턴스에 설치되어 있는 자바 버전을 확인합니다. 기본적으로 open jdk 7버전이 설치 되어 있습니다.

java -version
  •  open jdk 1.7 xxx

1-1-2. yum을 통해서 openjdk 1.8을 설치합니다.

sudo yum install java-1.8.0-openjdk.x86_64

 

1-1-3. tomcat 8 설치와 톰캣 패키지 3개를 설치합니다.

sudo yum install tomcat8

sudo yum install tomcat8-admin-webapps

sudo yum install tomcat8-webapps

1-1-4. 톰캣 서비스를 실행합니다.

sudo service tomcat8 start

1-1-5. 보안그룹에서 사용자 지정 TCP 8080을 허용하고, 퍼블릭 ipv4 DNS로 주소를 입력하고 접속합니다.

톰캣 화면이 나오네요. 고양이 home화면이 잘 나오면 1단계는 문제없이 완료됬습니다. 

 

2. git 설치 , Project clone


2-1. yum install을 통해 git을 설치합니다.

sudo yum install git

2-2 git version을 확인합니다. 

git version
  • version은 최신버전으로 설치한다. 
  • git version 2.23.4

2-3 root/app/git 디렉토리를 만든다

mkdir /root/app
cd /app
mkdir /root/app/git
cd git
pwd 

# /root/app/git

2-4 git repo서버에서 clone을 합니다

git clone https://github.com/themapisto/toyproject1222.git

 

3. Maven 설치, Compile,  Package!


 

3-1 maven을 설치합니다.

sudo yum install maven

3-2 Compile을 합니다 ( pom.xml ) 이 위치한 폴더에서 maven 명령어를 실행할수 있습니다.

cd /root/app/git/toyproject1222/1210kp

ls 

# pom.xml src Servers 

mvn compile

# Compile이 완료되면 target/classes라는 폴더가 생긴다

# 이후 패키징을 하면 그안에 ROOT.war같은 파일이 생깁니다.

3-3 maven package

mvn package

 

mvn package가 성공적으로 실행되면, target 폴더에 프로젝트 이름과 버전에 따라 알맞은 이름을 갖는 jar 파일이 생성된다. 위 예제의 경우에는 sample-1.0-SNAPSHOT.jar 파일이 생성된 것을 확인할 수 있다.

 

 

# pom.xml의 구조에 대해서 조금 알아봤는데 pom.xml에 기록되어있는 내용을 기반으로 ROOT.war 을 만드는것으로 보인다

 

  • <groupId> - 프로젝트의 그룹 ID 설정
  • <artifactId> - 프로젝트의 Artifact ID 설정
  • <version> - 버전 설정
  • <packaging> - 패키징 타입 설정. 위 코드의 경우 프로젝트의 결과 Artifact가 jar 파일로 생성됨을 의미한다. jar뿐만 아니라 웹 어플리케이션을 위한 war나 JEE를 위한 ear 등의 패키징 타입이 존재한다.

 

3-4 war파일을 tomcat의 webapps 경로에 옮긴다.

/usr/share/tomcat8/webapps

 

3-5 파일을 옮긴뒤에 server을 재시작 해준다.

sudo service tomcat8 restart

 

끝! 

'DevOps > AWS' 카테고리의 다른 글

[AHSS 1주차] AWS S3 보안 (1)  (0) 2023.08.28
AWS Config  (0) 2023.06.06
[AWS] S3 사용방법  (0) 2022.06.22
[AWS] 1. EC2 인스턴스 생성하기  (0) 2021.05.09
[AWS] 2. MariaDB RDS 생성하기  (0) 2021.04.29