Gradle-groovy
Java : 17
Gradle : 8.1
Spring Boot 플러그인 : 3.0.5
Thymeleaf : implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity6'
// MySQL 대신 h2 DB 로 대체 (추후에 MySQL 연동)
DB : H2 (runtimeOnly 'com.h2database:h2')
EC2
를 입력해서 EC2 대시보드
로 이동하자인스턴스 시작
을 눌러 인스턴스를 생성해보자Ubuntu Server 22.04 LTS (HVM), SSD Volumn Type
을 사용할 것이다.t2,micro
를 사용할 예정이다.키 페어는 EC2 인스턴스에 원격으로 접속하기 위해 필수적으로 필요하기 때문에 생성해줘야한다.
또한, 키 페어는 한번 생성하면 두번다시 다운로드 받을 수 없기 때문에 잘 보관하고 있어야한다.
우측의 새 키 페어 생성
혹은 이미 존재한다면 선택
다음과 같이 키 페어 이름을 설정해주고 생성해주고 다운을 받아두자.
보안 그룹은 방화벽에 관한 내용으로 추후에 따로 생성해 세팅할 예정이다. 만약 기존에 보안 그룹을 설정해두었다면 기존 보안 그룹을 사용해도 된다.
해당 설정은 추후에 보안 그룹 탭에서 변경 가능하므로 넘어가도 좋다.
인스턴스 시작
을 눌러서 최종 생성을 완료하자EC2 대시보드-인스턴스
로 이동하면 인스턴스가 추가된걸 확인할 수 있다.인스턴스 요약
으로 들어가보자보안 그룹이란?
AWS 에서 제공하는 방화벽으로 인바운드 규칙, 아웃바운드 규칙이 존재
- 인바운드 규칙(inbound) : 외부에서 EC2나 RDS 등의 내부로 접근할때 사용되는 방화벽 규칙
- 아웃바운드 규칙(outbound) : EC2나 RDS 등의 내부에서 외부로 접근할때 사용되는 방화벽 규칙
보안
을 눌러 보안 그룹 확인네트워크 및 보안 - 보안 그룹
혹은 인스턴스 요약 - 보안 - 보안 그룹
을 눌러서 이동0.0.0.0/0
은 Anywhere-IPv4
이다.위에서부터 순서대로
인스턴스 요약
으로 돌아와서 우측 상단의 작업
- 보안
- 보안 그룹 변경
클릭이제 EC2 생성을 완료했으니 Ubuntu 에 접속을 해야하는데 접속하는 방법으로는 2가지 방법이 있다.
1. EC2 를 생성할때 다운받은 ssh 키를 이용해 원격 접속하기 (window 의 경우 별도 작업 필요)
2. EC2 대시보드에서 접근(여기서는 이 방법을 사용할 예정)
연결
클릭정적 파일 배포는 방식이 두 가지가 있는데 여기서는 1번 방식 사용
1. EC2에서 프로젝트 git clone 후 실행하기
2. 로컬 머신에서 jar 파일하여 EC2에 복사 후 실행
Ubuntu에서의 복사/붙여넣기는 ctrl+insert
/shift+insert
를 이용하면 된다.
sudo apt-get install git
git --version
아래 명령어를 통해 .ssh 디렉토리에서 키페어를 생성하게 되고 id_res.pub 파일이 생성됩니다.
cd ~/.ssh
ssh-keygen -t rsa -C github계정 메일(example@github.com)
cat id_rsa.pub
Github 레포지토리로 이동후 code 버튼 -> ssh 탭을 누르고 나온 주소를 복사
EC2에 접속한 터미널에서 git clone할 디렉토리로 이동후 복사한 값을 아래 명령어에 포함시켜 입력
git clone [ 복사한 github ssh 주소 ]
sudo apt update
sudo apt install openjdk-17-jdk
먼저 생성한 파일로 이동
파일 권한 추가
chmod +x ./gradlew
./gradlew build
// jar 파일이 생성되어 있음
cd build/libs
ex.
cd build/libs
// 2개의 파일이 존재하는데 오른쪽 파일을 실행하면 된다.
nohup java -jar [생성한 파일]-0.0.1-SNAPSHOT.jar &
ex.
nohup java -jar wuzuzu-0.0.1-SNAPSHOT.jar &
ps
tail -f nohup.out // 여기서 오류 확인도 가능
telnet [public 주소] 8080
jobs
fg %[jobs로 확인한 번호]
ctrl + c