인프라/리눅스, AWS

3. 우분투 서버에 깃허브 클론 및 설정 세팅

빌럽스 2023. 12. 27. 16:40

스프링 프로젝트 최초 배포 시에 필요한 깃허브 클론 및 설정 세팅 절차를 정리했다.

 

git --version

  1. 깃허브 다운받기
  2. gradlew 실행권한 주기
    chmod u+x gradlew
  3. 자바 설치 jdk, jre

sudo apt install openjdk-11-jdk

  1. gradlew 프로젝트를 jar 파일로 바꾸기

./gradlew build

꼭 ./ 붙이기(현재 폴더라는 의미)

-> build 라는 폴더가 생김

  1. 시간설정

 

  1. jar 파일 실행
    java -jar v1-0.0.1-SNAPSHOT.jar

java -jar *.jar

 

  1. nohup 실행

nohup java -jar v1-0.0.1-SNAPSHOT.jar 1>log.out 2>err.out &

log.out 에만 로그 남음 / 에러 발생 시 err.out에 로그 남음

 

build.gradle에 아래 내용 추가 필요

// plain archive는 애플리케이션 실행에 필요한 모든 의존성을 포함하지 않고 작성된 소스코드의 클래스 파일과 리소스 파일만 포함한다.

// 이렇게 생성된 *plain.jar 파일은 모든 의존성이 존재하는게 아니기 때문에 java -jar 명령어로 실행시 에러가 발생한다.

// 아래 코드는 jar 빌드시에 plain.jar 파일이 생성되지 않게 해주는 코드이다.

build.gradle에 아래 코드 추가 필요 / 안하면 plain 파일이 추가로 생성되어  java -jar *.jar 이렇게 실행할 때 오류날 수 있다.

jar {

enabled = false

}

 

nohup

리눅스에서 프로세스를 실행한 터미널 세션 명령이 끊어지더라도 계속 실행될 수 있게 해주는 명령어

nohub java -jar *.jar

 

근데 안됨, 포그라운드로 실행했기 때문에 종료하면 꺼짐

백그라운드로 실행해야 한다.

 

nohub java -jar *.jar & 백그라운드 실행

로그가 그냥 안뜸

nohup.out 파일에 로그를 남긴다

-> tail -f nohup.out 으로 계속 로그 볼 수 있음

 

nohup java -jar *.jar > mylog.out &




nohup java -jar v1-0.0.1-SNAPSHO1T.jar &

밑줄처럼 잘못실행 했을 경우 ->

에러출력됨 = 2

그후 정상실행 후 nohup.out 보면 에러출력과 정상출력 파일 중 에러출력 파일에 로그 있음

 

이것을 나누는 방법

 

nohup java -jar 파일명1>log.out 2>err.out &

 

nohup java -jar v1-0.0.1-SNAPSHOfT.jar 1>log.out 2>err.out & (잘못입력)

err.out에만 로그 남음

 

nohup java -jar v1-0.0.1-SNAPSHOT.jar 1>log.out 2>err.out &

log.out 에만 로그 남음



시간세팅

timedatectl 현재정보 확인

timedatectl list-timezones | grep Seoul : 목록 확인

timedatectl set-timezone Asia/Seoul

 

ps -ef | grep *.jar | grep -v grep | awk '{print $2}'

34300

(pgrep -f *.jar 명령어 -> 위와 동일)