Notice
Recent Posts
Link
정화 코딩
[Back-end] free-tier AWS EC2 인스턴스 생성 후 서버 실행 본문
EC2 인스턴스 생성

예전 글에서 했던 것과 동일하게 인스턴스를 생성했다. Closit은 이전에 사용한 인스턴스라 종료(삭제)했고 PreView가 이번 프로젝트에서 사용하는 인스턴스이다.
인바운드 규칙 설정

SSH 접근은 내 IP로만 가능하게 하고, 8080 포트 접근은 모든 IP에서 가능하도록 설정하였다.
인스턴스에 접속
Host ec2
Hostname {인스턴스의 퍼블릭 IPv4}
User ec2-user
IdentityFile ~/preview-key.pem
C:\Users\ShinJunghwa\.ssh\config 에 위와 같이 적어서 저장해두면
ssh ec2
명령 프롬프트에서 간단히 위와 같이 명령어를 입력하면 바로 인스턴스에 접속할 수 있다.
참고로 키 페어는 C:\Users\ShinJunghwa\preview-key.pem 에 두었다.
인스턴스에서 서버 실행 준비
sudo yum update -y
시스템을 업데이트 해준다.
sudo yum install git -y
Git을 설치한다.
sudo yum install java-17-amazon-corretto -y
Java를 설치한다.
java -version
Java가 잘 설치되었는지 확인하기 위해 버전을 확인해준다.

gradlew build
intelliJ에서 빌드를 해준다.

정상적으로 빌드가 되면 build\libs에 .war 파일이 생긴 것을 확인할 수 있다.
scp -i C:\Users\ShinJunghwa\preview-key.pem "C:\Users\ShinJunghwa\Documents\GitHub\Chapssal-tteok\BE\build\libs\preview-0.0.1-SNAPSHOT.war" ec2-user@ec2-54-180-2-79.ap-northeast-2.compute.amazonaws.com:~
명령 프롬프트에서 위와 같이 명령어를 실행시켜서 .war 파일을 서버에 복사해준다.

잘 복사가 되었다.
EC2 인스턴스에서 서버 실행
java -jar preview-0.0.1-SNAPSHOT.war

다시 ec2 인스턴스에 접속해준 후 위의 명령어로 서버를 실행해준다.

잘 실행된 것을 확인할 수 있다.

스웨거 명세서도 잘 보인다!!
nohup java -jar preview-0.0.1-SNAPSHOT.war > app.log 2>&1 &
백그라운드로 실행하려면 위와 같이 실행하면 된다.
EC2 인스턴스에서 서버 종료
ps aux | grep java
위의 명령어로 PID를 확인한다.
kill -9 [PID]
위의 명령어로 프로세스를 강제 종료한다.

이런식으로...
'Web Development' 카테고리의 다른 글
[Back-end] free-tier AWS RDS (MySQL) 인스턴스 생성 (0) | 2025.04.03 |
---|---|
[SpringBoot] 졸업 프로젝트 PreView: 프로젝트 초기 세팅 2 (0) | 2025.03.26 |
[SpringBoot] jakarta.validation 관련 Cannot resolve symbol 'validation' 오류 발생 원인과 해결 방법 (1) | 2025.03.26 |
[SpringBoot] 졸업 프로젝트 PreView: DB ERD 설계 (0) | 2025.03.19 |
[SpringBoot] 졸업 프로젝트 PreView: 프로젝트 초기 세팅 (0) | 2025.03.17 |