[Oracle Cloud] 오라클 클라우드 (4) - SpringBoot 배포 (Gradle, jar)
2022. 10. 6. 11:03
반응형
[Oracle Cloud] 오라클 클라우드 (1) - 가입 및 인스턴스 생성
[Oracle Cloud] 오라클 클라우드 (2) - MySQL 설치 & Workbanch 연결
[Oracle Cloud] 오라클 클라우드 (3) - JDK 설치 (Java)
🔹 Git 설치
git 이외에 FTP 등 방식으로도 배포 파일을 받아올 수 있습니다. 여기서는 git을 사용해서 코드를 clone하고, 빌드 - 배포하는 방식으로 진행했습니다.
1. git 설치
sudo yum install git
2. 설치 확인
git --version
🔹 프로젝트 clone, 빌드. 실행
1. 디렉토리 생성 및 이동
mkdir server
cd server
2. clone
git clone [git주소]
3. 생성된 프로젝트로 이동
cd [프로젝트이름]
프로젝트 이름을 모르겠으면 ls 확인
4. 빌드
chmod +x gradlew
./gradlew build
빌드가 진행되는것을 볼 수 있습니다. 23분이나 걸렸다.
5. 방화벽 허용
sudo iptables -I INPUT 1 -p tcp --dport 8080 -j ACCEPT
- 8080 자리에 사용하는 port 번호를 넣습니다.
6. 실행 (세션 종료 시 프로그램 종료됨)
cd build/libs/
java -jar [파일명.jar]
파일명을 모르겠으면 ls 확인
🔹 네트워크 port 허용
오라클 클라우드에 로그인 후 인스턴스 VNIC 네트워크에서 보안 목록을 추가해야 합니다.
자세한 방법은 [Oracle Cloud] 오라클 클라우드 (2) - MySQL 설치 & Workbanch 연결 글의 MySQL Port 허용에 있습니다.
🔹 접속 확인
외부에서 정상 접속됩니다.
🔹 백그라운드 배포
터미널 종료(세션 종료) 후에도 계속 프로그램을 돌리기 위해 백그라운드에서 실행해야 합니다.
1. 빌드
./gradlew build
2. 백그라운드 실행
nohup java -jar [파일명.jar] 2>&1 &
- nohup은 no hang up의 약자입니다. 해석 그대로 끊지 말란 명령입니다.
- 2>&1은 표준 에러와 표준 출력을 한곳에 남긴다는 의미입니다. 여기서 파일명을 지정하지 않았으므로 자동으로 생성된 nohup.out에 저장됩니다.
3. 종료
ps -ef|grep jar
kill -15 [pid 번호]
- ps를 통해 pid 번호를 확인 할 수 있습니다.
- -15는 정상적인 방식으로 종료를 의미합니다.
종료가 되지 않을 때, -9를 넣어 강제로 종료할 수 있습니다.
반응형
'Infra > Cloud' 카테고리의 다른 글
[Oracle Cloud] 오라클 클라우드 - 오라클 DB 생성 및 접속 (ATP 데이터베이스) (0) | 2024.02.29 |
---|---|
[Oracle Cloud] 오라클 클라우드 (3) - JDK 설치 (Java) (0) | 2022.10.06 |
[Oracle Cloud] 오라클 클라우드 (2) - MySQL 설치 & Workbanch 연결 (0) | 2022.10.05 |
[Oracle Cloud] 오라클 클라우드 (1) - 가입 및 인스턴스 생성 (0) | 2022.10.04 |