Ubuntu에 Project 배포

유재훈·2023년 5월 5일
0

배포

목록 보기
2/2

서버 연결

ssh ubuntu@공용 IP 주소

처음 연결할 경우 yes 입력해야함

Java & Tomcat 설치

Jdk-11 설치

# 전체 패키지 update
$ sudo apt-get update && sudo apt-get upgrade

# 설치가능한 openjdk 검색
$ sudo apt-cache search openjdk

# jdk11 설치
$ sudo apt-get install -y openjdk-11-jdk

$ java -version
openjdk version "11.0.18" 2023-01-17
OpenJDK Runtime Environment (build 11.0.18+10-post-Ubuntu-0ubuntu120.04.1)
OpenJDK 64-Bit Server VM (build 11.0.18+10-post-Ubuntu-0ubuntu120.04.1, mixed mode, sharing)

중간에 Y/n이 나오는데 계속 Y 입력하면 된다.

JAVA HOME 설정

$ vim ~/.bashrc

# 맨 밑에 추가
export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))
export PATH=$PATH:$JAVA_HOME/bin

$ source ~/.bashrc

$ echo $JAVA_HOME
/usr/lib/jvm/java-11-openjdk-amd64

Maven 설치

sudo apt install maven

mvn -version
Apache Maven 3.6.3
Maven home: /usr/share/maven
Java version: 11.0.18, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: en, platform encoding: UTF-8
OS name: "linux", version: "5.15.0-1033-oracle", arch: "amd64", family: "unix"

Tomcat9 설치

https://tomcat.apache.org/download-90.cgi

tar.gz 링크 주소 복사

# 다운로드
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.74/bin/apache-tomcat-9.0.74.tar.gz

#압축해제
tar xvf apache-tomcat-9.0.74.tar.gz

#파일이동
mv apache-tomcat-9.0.74 tomcat

tomcat 서비스 지정

#서비스로 지정
sudo vi /etc/init.d/tomcat

#!/bin/bash

### BEGIN INIT INFO
# Provides:    tomcat
# Required-Start:  $remote_fs $syslog
# Required-Stop:   $remote_fs $syslog
# Default-Start:   2 3 4 5
# Default-Stop:    0 1 6
# Short-Description: auto start Tomcat server
# Description: start web server
### END INIT INFO

export CATALINA_HOME=/home/ubuntu/tomcat
case $1 in
    start)
        echo "start tomcat: "
				sh $CATALINA_HOME/bin/startup.sh
        ;;
    stop)
        echo "shutdown tomcat: "
        sh $CATALINA_HOME/bin/shutdown.sh
        ;;
    restart)
        echo "restart tomcat: "
        sh $CATALINA_HOME/bin/shutdown.sh;
        sh $CATALINA_HOME/bin/startup.sh
        ;;
    *)
        echo "usage: service tomcat {start|stop|restart}"
        exit 1
esac
- 실행권한
sudo chmod 755 /etc/init.d/tomcat

- 서비스 업데이트
sudo update-rc.d tomcat defaults

sudo service tomcat status

- 서버 실행
sudo service tomcat start

만약 tomcat server가 제대로 실행되지 않으면 방화벽을 확인해봐야한다.

방화벽 설정

# 8080 허용
sudo iptables -I INPUT 1 -p tcp --dport 8080 -j ACCEPT


public ip:8080을 인터넷에 쳤을때 위 사진처럼 나오면 성공!

Git 설치

sudo apt install git

git --version
git version 2.25.1

프로젝트 소스 가져오기

mkdir [원하는 폴더명]

폴더에 들어가 clone or pull 하기

#처음 가져올때
git clone [주소]

#2회차 이상일때
git pull origin [브랜치 이름]

.gitignore에 등록한 파일 만들기

datasource.properties

datasoruce.properties가 없어 만들겠다.
Spring과 Servlet$Jsp Project별로 루트가 다르기에 해당 루트에 만들어줘야한다.

touch datasource.properies


지갑경로는 ubuntu 서버 지갑루트로 수정해줘야한다.

jar파일

scp /Users/jaehoon/web_server_workspace/hotel-project/src/main/webapp/WEB-INF/lib/cos.jar ubuntu@132.145.85.112:/home/ubuntu/hotel/hotel-project/src/main/webapp/WEB-INF/lib/

이렇게 파일을 하나하나 옮겨준다. 파일질라로 사용하면 간편하다.

Oracle Cloud 지갑 폴더 복사

scp -r /Users/jaehoon/dev/Wallet_CRFJN9KBN0THKE3B ubuntu@132.145.85.112:/home/ubuntu

프로젝트 war파일 만들기

본인의 pom.xml 경로로 이동

mvn clean
mvn package

target경로로 들어가 war파일 확인하기
확인 후 tomcat/webapps/ROOT.war 파일로 복사시킨다.

mv xxx.war [톰캣 경로]/webapps/ROOT.war

tomcat 구동시키기

/tomcat/webapps폴더에 ROOT파일이 있는지 확인

rm -rf ROOT

ROOT가 이미 있다면 기존에 실행된거기에 제거해주기

다음으로
/tomcat/bin폴더로 이동

./startup.sh

그럼 프로젝트가 실행된다.

터미널 종료되도 서버 돌아가게 하기

nohup ./startup.sh

/tomcat/bin에서 실행하면 된다.

포트포워딩

sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080

8080없이도 접근 가능

0개의 댓글