반응형

우분투 톰캣 설치하기

먼저 설치할 톰캣을 다운로드 합니다.

 

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

불러오는 중입니다...

 

8.5 tar.gz으로 다운로드합니다.

 

저는 톰캣 8.5로 진행하겠습니다.

 

8.5 tar버전을 다운로드 후 putty를 통해 우분투 서버에 SSH접속을 합니다.

 

1. 톰캣을 설치할 디렉토리를 만듭니다. (원하는 디렉토리에 설치하시면 됩니다.)

$ sudo mkdir 원하는 디렉토리

ex) $ sudo mkdir /home/psw/tomcat

 

2. ftp를 활용하여 tar파일을 옮겨줍니다. 서버에 존재한다면 mv명령어를 사용해 생성한 디렉토리로 옮겨줍니다.

저는 파일질라를 사용했습니다.

파일질라를 활용한 tar파일 이동

 

3. tar 압축파일을 풀어줍니다.

$ sudo tar xvf apache-tomcat-8.5.51.tar.gz

4번부터는 선택사항입니다. 풀린 디렉토리의 webapps에 war파일을 넣고 bin파일에서 서비스를 기동하시고 사용하셔도 됩니다.

 

4. 풀린 디렉토리명을 편한 방식으로 변경합니다.

$ sudo mv apache-tomcat-8.5.51 tomcat-8.5

저는 tomcat-8.5로 변경했습니다.

 

5. conf/server.xml을 열어 어플리케이션(war파일)이 바라볼 위치를 지정하기 위해 xml파일을 열어줍니다.

$ sudo vi conf/server.xml

 

6. server.xml 하단부 Host부분에 Context를 추가한 후, 저장하고 vi를 종료합니다.

<Context path="" docBase="어플리케이션 위치/어플리케이션 이름" reloadable="false" ></Context>

 

저는 아래와 같이 설정하였습니다.

/home/psw/tomcat/app의 디렉토리를 바라보는 톰캣으로 설정하였습니다.

 

7. 구동시킬 war파일을 server.xml에서 추가한 위치에 옮겨주시고 war의 압축을 풀어줍니다.

저는 war를 미리 풀어놓고 zip또는 tar로 만들어서 압축을 해제하고 있습니다.

풀린 tar(war파일)의 디렉토리 명을 app로 바꿉니다.

 

8. 톰캣을 시작합니다. (.bat파일은 윈도우에서 사용합니다.)

$ sudo ./bin/startup.sh

.sh파일로 시작과 종료를 제어합니다.

shutdonw.sh 는 톰캣을 종료할 때, 사용합니다.

 

9. 톰캣 프로세스가 정상적으로 동작 중인지 확인합니다.

$ ps aux | grep tomcat

 

 

톰캣 서비스 등록하기

톰캣을 종료 시작할때 매번 /tomcat/bin으로 가서 명령을 날리는게 번거롭거나 서버가 재시작되어도 자동으로 톰캣이 올라오도록 하려면 톰캣을 서비스로 등록하시면 됩니다.

 

1. 서비스등록을 위해 파일을 생성합니다. (tomcat으로 서비스를 등록하겠습니다.)

$ sudo vi /etc/init.d/tomcat

 

2. vi창이 열리면 아래의 쉘명령문을 입력합니다.

#!/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/psw/tomcat/tomcat-8.5
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
exit 0

여기서 주의하실 곳은 CATALINA_HOME 변수값을 톰캣 위치를 정확하게 지정해셔야 합니다.

 

톰캣 서비스 쉘 스크립트

저는 아까 톰캣을 생성한 위치로 지정했습니다.

 

3. 생성한 tomcat파일 권한을 변경합니다.

$ sudo chmod 755 /etc/init.d/tomcat

 

4. 서비스를 업데이트 합니다.

$ sudo update-rc.d tomcat defaults

 

5. 톰캣 서비스를 확인합니다.

$ sudo service tomcat status

 

6. 이제 서비스가 먹히는지 확인해보겠습니다.

$ service tomcat start -- 톰캣이 종료된 상태라면 start로 동작시킵니다.

$ service tomcat stop -- 톰캣이 시작된 상태라면 stop으로 종료시킵니다.

$ service tomcat restart -- 톰캣을 재시작하려면 restart 시킵니다.

 

이 후에는 우분투서버가 재부팅되어도 서비스가 동작중 인것을 볼 수 있습니다.

반응형