[AWS] EC2에 웹 프로젝트 배포하기
EC2 인스턴스에 접속합니다.
커널 업데이트하라는 메세지에 따라, yum패키지 매니저를 통해
sudo yum update 명령어를 실행하여 업데이트합니다.
커널 업데이트가 완료되었습니다.
1. 자바8설치
프로젝트를 배포하기에 앞서 자바의 버전을 확인해 보겠습니다.
java -version
2020.03. 기준으로 EC2 자바 기본버전은 java7버전 입니다.
java8버전을 사용하기 위해 다음 명령어로 자바8버전을 설치합니다.
sudo yum install -y java-1.8.0-openjdk-devel.x86_64
설치가 완료되었으면, 다음 명령어로 자바 버전을 8버전으로 변경합니다.
sudo /usr/sbin/alternatives --config java
사용하지 않는 자바 7버전을 삭제하기 위해 다음의 명령어를 실행합니다.
sudo yum remove java-1.7.0-openjdk
java -version 명령어로 현재버전이 자바8버전으로 잘 설정되었는지 확인해봅니다.
2. Git 설치
다음 명령어로 git을 설치합니다.
sudo yum install git
설치가 완료되었으면
git --version
명령으로 git이 잘 설치되었는지 버전을 확인해봅니다.
3. 프로젝트 Clone
git이 잘 설치되었으면 다음 명령어로 프로젝트를 clone할 디렉토리를 생성합니다.
mkdir app
mkdir app/git
app/git 디렉토리가 생성되었으면 git 디렉토리로 이동합니다.
cd ~/app/git
github 홈페이지에 접속해서 clone할 본인의 웹 프로젝트의 HTTPS주소를 복사합니다.
터미널로 돌아와 github의 프로젝트를 EC2로 복제하겠습니다.
복사한 주소를 다음의 명령어로 실행합니다.
git clone 복사한HTTPS주소
ls 명령어로 프로젝트가 잘 clone 되었는지 확인합니다.
clone한 프로젝트의 디렉토리로 이동하고
git branch 명령어를 사용하여 현재 브랜치를 확인 할 수도 있습니다.
git branch -a
프로젝트가 잘 복제되었는지 테스트를 진행하겠습니다.
다음의 명령어를 실행합니다.
./gradlew test
권한문제로 허가거부 되어 테스트가 진행되지 않았습니다.
gradlew에 권한을 부여합니다.
chmod +x gradlew
다시 테스트를 진행합니다.
./gradlew test
테스트를 잘 통과하였습니다.
4. 프로젝트 build 및 스프링부트 실행
프로젝트를 빌드하여 jar파일을 생성하겠습니다.
./gradlew build
빌드에 성공하면,
app/git/lectureSearch/build/libs/ 디렉토리에 jar파일이 생성됩니다.
jar파일을 실행하면 스프링부트가 실행됩니다.
jar파일을 실행하는 명령어는 다음과 같습니다.
java -jar jar파일이름
스프링부트가 정상가동 되었습니다.
5. 웹 서비스 접속
스프링부트는 8080포트로 실행됩니다.
따라서 EC2 인스턴스에 8080포트로 접속할 수 있도록 규칙을 추가해 줍니다.
이제 EC2 인스턴스의 IP로 웹 서비스에 접속을 할 수 있게 되었습니다.
EC2 인스턴스의 DNS주소를 복사합니다.
인터넷 주소창에 DNS주소를 붙여놓고 뒤에 :8080 포트를 명시해 줍니다.
DNS주소:8080/
드디어 LectureSearch 프로젝트가 외부에 노출되었습니다.