스프링 부트 배포 - eunja511005/Tutorial GitHub Wiki

오라클 클라우드 가이드 문서

https://developer.oracle.com/ko/learn/technical-articles/install-spring-boot-on-an-oracle-instance

깃헙 설치

sudo yum install git
git --version
mkdir git
chmod 777 git
cd git
git clone https://github.com/eunja511005/Tutorial.git
cd Tutorial
git status

image

image

image

메이븐 설치

CentOS 리포지토리에는 yum 패키지 매니저와 함께 설치할 수 있는 Maven 패키지가 포함되어 있습니다. 이것이 CentOS에 Maven을 설치하는 가장 쉬운 방법입니다. 그러나 저장소에 포함된 버전이 최신 버전의 메이븐보다 뒤처질 수 있습니다. CentOS7에서는 

1. CentOS7 기본 maven 설치
sudo yum install java-1.8.0-openjdk
sudo yum install maven
mvn -version
cd /home/opc/git/Tutorial
mvn install <== maven 버젼이 낮아서 오류 발생

2. 더 높은 버젼 설치
cd /home/opc/download
wget https://dlcdn.apache.org/maven/maven-3/3.9.1/binaries/apache-maven-3.9.1-bin.tar.gz
cd /home/opc
mkdir maven
chmod 777 maven
cd maven
tar -zxvf /home/opc/download/apache-maven-3.9.1-bin.tar.gz
export M2_HOME=/home/opc/maven/apache-maven-3.9.1
export MAVEN_HOME=/home/opc/maven/apache-maven-3.9.1
export PATH=${M2_HOME}/bin:${PATH}
source /etc/profile

image

image

image

방화벽 설정 및 서비스 확인

cd /home/opc/git/Tutorial
git status
git pull
mvn install
java -jar /home/opc/git/Tutorial/target/demo-0.0.1-SNAPSHOT.jar
nohup java -jar /home/opc/git/Tutorial/target/demo-0.0.1-SNAPSHOT.jar & 
ps -ef | grep demo

sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
curl -X GET http://localhost:8080

image

오라클 클라우드 포트 열기

- 컴퓨트 > 인스턴스 > 서버선택 서버 인스턴스 상세페이로 이동
- 보안 목록 클릭
- 보안목록 세부정보 페이지로 이동
- 수신규칙 추가 : 
  1) 소스 CIDR부분에 0.0.0.0/0 추가
  2) 대상포트 범위에 8080추가
  3) 설명에 간단하게 무슨포트인지를 적어놓습니다.
    ※ 0.0.0.0/0 은 모든아이피의 접속을 허용하겠다는 뜻입니다.

sudo iptables -I INPUT 1 -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 1 -p tcp --dport 443 -j ACCEPT
sudo iptables --list

image

image

image

image

접속 확인

http://193.123.233.105:8080/

image

톰캣 설치

yum list installed | grep tomcat
sudo yum -y install tomcat
sudo yum -y install tomcat-webapps
sudo yum -y install tomcat-admin-webapps

- 톰캣 시작 : systemctl start tomcat
- 재시작 이후에도 자동 시작 : systemctl enable tomcat

톰캣 war 배포

sudo useradd tomcat
chown tomcat:tomcat -R /usr/share/tomcat
chown tomcat:tomcat -R /var
chown tomcat:tomcat -R /etc/tomcat
chown tomcat:tomcat -R /usr/share/java/tomcat
chown root:root -­R /usr/share/tomcat
chown root:root -R /var
chown root:root -R /etc/tomcat
chown tomcat:tomcat demo-0.0.1-SNAPSHOT.war

cat /etc/passwd

getsebool -a | grep http
setsebool httpd_can_network_connect on
setsebool httpd_can_network_connect on -P


1. server.xml 수정
  - su - root
  - cd /usr/share/tomcat/conf
  - vi server.xml
  - 제일 하단으로 이동
  - <Host> 안에 아래 내용 추가
  - <Context path="/" docBase="/home/opc/git/Tutorial/target/demo-0.0.1-SNAPSHOT" reloadable="true" />

2. tomcat 재기동하기
  - sudo systemctl restart tomcat
  - systemctl stop tomcat
  - systemctl start tomcat
cd /usr/share/tomcat/webapps

image

image

임시 배포 방법

opc로 로그인
su - root
Jw0713!@JwJw
한개 창 cd /home/opc/git/Tutorial/
       git pull
       mvn package
       mv /home/opc/git/Tutorial/target/demo-0.0.1-SNAPSHOT.war /usr/local/lib/tomcat/webapps/ROOT.war

한개 창 더 열어서 cd /usr/local/lib/tomcat/webapps/
                 stop
                 rm -rf ROOT
                 rm -rf ROOT.war
                 ls -al ROOT.war
                 start
                 waslog
⚠️ **GitHub.com Fallback** ⚠️