[AWS] EC2서버 접속하기 - 13 Jar 배포시 profiles 에 따른 설정법.(-Dspring.profiles.active=prod)

 

 

1. 나는 8080 포트를 사용하고 싶지만

자바 설정파일에 dev 기준으로 되어있어 이걸을 prod 설정 파일로 바꿔줘야할때

 

 java -jar aws-v2-0.0.1.jar

 

 

2. prod 설정을 쓸대 사용하는 코드 이다.

 

java -jar -Dspring.profiles.active=prod aws-v2-0.0.1.jar

 

 

3. deploy 파일

#i/bin/bash

# 1. env variable ( 외부변수)
source ./var.sh
echo "1.env variable setting complete"

# 2. clone delete 
touch crontab_delete
crontab crontab_delete
rm crontab_delete
echo "2. cron delete complete"

# 3. server checking
if [ -n "${PROJECT_PID}" ]; then
  # re deploy

  kill -9 $PROJECT_PID
  echo "3. project kill complete"  
else
  # first deploy

  # 3-1 apt update -y 물어보면 yes ,, dev>null 스레기통 버림

  sudo apt-get -y update 1>/dev/null

  echo "3-1 apt update complete"

  #3-2 jdk install
  sudo apt-get -y install openjdk-11-jdk 1>/dev/null
  echo "3-2 jdk install complete"

  #3-3 timezone
  sudo timedatectl set-timezone Asia/Seoul
  echo "3-3 timezone complete"
fi

# 4. project folder delete ( rm -rf home/ubuntu/aws-v2 )
rm -rf ${HOME}/${PROJECT_NAME}
echo "4.project folder delete compolete"

# 5. git clone
git clone https://github.com/${GITHUB_ID}/${PROJECT_NAME}.git
sleep 3s
echo "5. git clone complete "


#6. gradlew
chmod u+x ${HOME}/${PROJECT_NAME}/gradlew
echo "6.gradle u+x complete"


# 7. build
cd ${HOME}/${PROJECT_NAME}
./gradlew build
echo "7. gradlew build complete"

# 8. start jar
nohup java -jar -Dspring.profiles.active=prod ${JAR_PATH} 1>${HOME}/log.out 2>${HOME}/erro.out &
echo "8. start server complete"

 

 

4. var.sh 파일

 

#!/bin/bash

GITHUB_ID="codingspecialist"
PROJECT_NAME="aws-v2"
PROJECT_VERSION="0.0.1"
PROJECT_PID="$(pgrep -f ${PROJECT_NAME}-${PROJECT_VERSION}.jar)"
JAR_PATH="${HOME}/${PROJECT_NAME}/build/libs/${PROJECT_NAME}-${PROJECT_VERSION}.jar"

export GITHUB_ID
export PROJECT_NAME
export PROJECT_VERSION
export PROJECT_PID
export JAR_PATH

 

 

해당강의는 아이티윌  국비지원센터

 

최주호님의 AWS 강의를 듣고 블로그에 기록해두는 용입니다.

https://www.e-itwill.com/course/course_view.jsp?id=123& 

 

아이티윌 K-디지털 기초역량훈련 온라인 센터

아이티윌 온라인 국비지원교육 전용 사이트. K-디지털 기초역량훈련 과정. 국민내일배움카드 전용 강좌 진행중.

www.e-itwill.com