전자정부 프레임워크) eGovFrame 게시판 만들기 1탄 ( v3.10.0 )
본문 바로가기
programming/전자정부프레임워크

전자정부 프레임워크) eGovFrame 게시판 만들기 1탄 ( v3.10.0 )

by 코딩하는 핑가 2021. 10. 5.
반응형

* 전자정부 프레임워크 v3.10.0의 게시판 만들기 전 test server에 tomcat 연결 및 프로젝트 배포입니다.

* 오탈자 및 잘못된 정보는 댓글로 알려주시기 바랍니다.

* 본 포스팅을 무단 복제하시거나 배포하지 마시기 바랍니다.

( 게시글 최상단에 본 블로그 출처를 밝히시면 포스팅은 가능합니다. )

 

* 실습 환경

- 개발 OS : Windows 10 64bit

- 실행 OS : Ubuntu 18.04.5 LTS

- DB : Tibero6

- Java : JDK 1.8.0_271 (JDK 1.6 이상 권장)

- IDE : Eclipse IDE - eGovFrameDev 3.10 64bit

- Tomcat : Apache Tomcat v8.0

- Maven : Maven 3.10

- mybatis : mybatis-3.5.3

 

* 실습 환경 설치 및 환경 설정은 기초 단계를 참고하시기 바랍니다.

https://ss-o.tistory.com/notice/147

 

0탄 - eGovFrame 게시판 만들기 0탄 - 예제 프로젝트 삭제 후 jsp 생성 및 페이지 연결

1탄 - eGovFrame 게시판 만들기 1탄 - 예제 프로젝트 tomcat 서버 연동

2탄 - eGovFrame 게시판 만들기 2탄 - tibero DB 연동 및 관련 파일 수정

 

* 본 포스팅의 코드가 필요하신 분은 댓글남겨주세요.


필자는 회사에서 개인에게 ip를 할당해줬기 때문에 ubuntu tomcat에 war파일을 배포하기 위한 AWS 인스턴스를 따로 생성하지 않았다.

만약 ip가 없다면, AWS에서 인스턴스를 생성하여 ip를 부여받기 바란다.

1. 서버에 Tomcat 설치

아래의 명령어 입력 후 tomcat8을 서버에 설치한다.

sso@sso-System-Product-Name:~$ sudo apt-get insatll tomcat8

설치가 완료된 뒤 /usr/share/tomcat8/bin/version.sh 를 입력해 tomcat 버전을 확인할 수 있다.

sso@sso-System-Product-Name:~$ /usr/share/tomcat8/bin/version.sh
Using CATALINA_BASE:   /usr/share/tomcat8
Using CATALINA_HOME:   /usr/share/tomcat8
Using CATALINA_TMPDIR: /usr/share/tomcat8/temp
Using JRE_HOME:        /usr/local/java/jdk1.8.0_271
Using CLASSPATH:       /usr/share/tomcat8/bin/bootstrap.jar:/usr/share/tomcat8/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.39 (Ubuntu)
Server built:   Sep 9 2019 19:47:51 UTC
Server number:  8.5.39.0
OS Name:        Linux
OS Version:     4.15.0-154-generic
Architecture:   amd64
JVM Version:    1.8.0_271-b09
JVM Vendor:     Oracle Corporation

sudo service tomcat8 start 를 입력해 tomcat server 를 실행시키고,
systemctl status tomcat8.service 를 입력해 tomcat의 구동상황을 볼 수 있다.

Active : active ( running ) ~ 으로 되어있으면 정상적으로 tomcat이 실행되고 있다.

sso@sso-System-Product-Name:~$ sudo service tomcat8 start
sso@sso-System-Product-Name:~$ systemctl status tomcat8.service
● tomcat8.service - LSB: Start Tomcat.
   Loaded: loaded (/etc/init.d/tomcat8; generated)
   Active: active (running) since Fri 2021-10-01 17:49:19 KST; 14s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 12042 ExecStop=/etc/init.d/tomcat8 stop (code=exited, status=0/SUCCESS)
  Process: 12097 ExecStart=/etc/init.d/tomcat8 start (code=exited, status=0/SUCCESS)
    Tasks: 37 (limit: 4915)
   CGroup: /system.slice/tomcat8.service
           └─12143 /usr/lib/jvm/default-java/bin/java -Djava.util.logging.config.file=/var/lib/tomcat8/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.awt.headless=true -XX:+UseConcMar

2. 테스트 해보기

http://서버ip:8080 를 입력하면 tomcat server에 기본으로 배포되어 있는 화면이 보인다.

3. 예제 프로젝트 Tomcat 으로 실행시키기

eGovFrame 게시판 만들기 0탄에서 만들어놓은 예제 프로젝트를 http://서버ip:8080으로 실행시켜볼 예정이다.

Tomcat으로 실행시키기 위해 해당 프로젝트를 Export해서 war 파일로 만들어 놓고 war 파일을 임시 디렉터리에 위치시킨다.

( 파일을 위치 시키는 방법은 fileZlia 등을 이용하면 된다. )

sso@sso-System-Product-Name:~/tomcat8_test$ pwd
/home/sso/tomcat8_test
sso@sso-System-Product-Name:~/tomcat8_test$ ll
total 19936
drwxrwxr-x  2 sso sso     4096 10월  5 10:35 ./
drwxr-xr-x 28 sso sso     4096 10월  5 10:35 ../
-rw-rw-r--  1 sso sso 20402519 10월  5 10:35 eGovFrame_test.war

이제 eGovFrame_test.war 파일을 배포시키기 위해 /var/lib/tomcat8/webapps/로 이동시켜야하는데,  권한과 소유권이 sso로 설정되어있기 때문에 해당 위치로 파일을 이동시킬 수가 없다.

그래서 이동 전 먼저 권한을 tomcat8로 변경해야하며 sudo chmod 777 eGovFrame_test.war 명령어로 권한을 777로 변경해준다.

sso@sso-System-Product-Name:~/tomcat8_test$ ls -al
total 19936
drwxrwxr-x  2 sso sso     4096 10월  5 10:35 .
drwxr-xr-x 28 sso sso     4096 10월  5 10:35 ..
-rw-rw-r--  1 sso sso 20402519 10월  5 10:35 eGovFrame_test.war

sso@sso-System-Product-Name:~/tomcat8_test$ sudo chmod 777 eGovFrame_test.war
[sudo] password for sso:
sso@sso-System-Product-Name:~/tomcat8_test$ ll
total 19936
drwxrwxr-x  2 sso sso     4096 10월  5 10:35 ./
drwxr-xr-x 28 sso sso     4096 10월  5 10:35 ../
-rwxrwxrwx  1 sso sso 20402519 10월  5 10:35 eGovFrame_test.war*

권한을 변경해 준 뒤 sudo chown tomcat8:tomcat8 eGovFrame_test.war 명령어로 해당 war 파일의 Owner와 Group을 tomcat8로 동시에 변경해준다.

sso@sso-System-Product-Name:~/tomcat8_test$ sudo chown tomcat8:tomcat8 eGovFrame_test.war
[sudo] password for sso:
sso@sso-System-Product-Name:~/tomcat8_test$ ll
total 19936
drwxrwxr-x  2 sso  sso      4096 10월  5 10:35 ./
drwxr-xr-x 28 sso  sso      4096 10월  5 10:35 ../
-rwxrwxrwx  1 tomcat8 tomcat8 20402519 10월  5 10:35 eGovFrame_test.war*

권한과 소유자, 그룹을 모두 변경했다면 war 파일을 /var/lib/tomcat8/webapps로 이동시킨다.

다른 터미널 창에서 cd /var/lib/tomcat8/webapps 명령어를 입력하여 war를 이동시킬 위치에 tree를 먼저 살펴보면,

ROOT 아래에 index.html , ROOT/META-INF 아래에 context.xml이 존재하는 것을 알 수 있다.

index.html을 열어보면 2.테스트 해보기의 결과물을 확인할 수 있다.

sso@sso-System-Product-Name:~$ cd /var/lib/tomcat8/webapps
sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ pwd
/var/lib/tomcat8/webapps
sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ ll
total 12
drwxrwxr-x 3 tomcat8 tomcat8 4096 10월  1 17:53 ./
drwxr-xr-x 5 root    root    4096 10월  5 10:28 ../
drwxr-xr-x 3 root    root    4096 10월  1 17:19 ROOT/
sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ tree
.
└── ROOT
    ├── META-INF
    │   └── context.xml
    └── index.html

2 directories, 2 files

이제 본 터미널 창에서 sudo mv eGovFrame_test.war /var/lib/tomcat8/webapps 명령어를 입력한다.

sso@sso-System-Product-Name:~/tomcat8_test$ pwd
/home/po7dev/tomcat8_test
sso@sso-System-Product-Name:~/tomcat8_test$ ll
total 19936
drwxrwxr-x  2 sso  sso      4096 10월  5 10:35 ./
drwxr-xr-x 28 sso  sso      4096 10월  5 10:35 ../
-rwxrwxrwx  1 tomcat8 tomcat8 20402519 10월  5 10:35 eGovFrame_test.war*
sso@sso-System-Product-Name:~/tomcat8_test$ sudo mv eGovFrame_test.war /var/lib/tomcat8/webapps
sso@sso-System-Product-Name:~/tomcat8_test$

/var/lib/tomcat8/webapps에서 ll 명령어로 해당 파일이 정상적으로 배포된 것을 확인할 수 있다.

sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ ll
total 19944
drwxrwxr-x 4 tomcat8 tomcat8     4096 10월  5 10:54 ./
drwxr-xr-x 5 sso    sso        4096 10월  5 10:28 ../
drwxr-xr-x 3 sso    sso        4096 10월  1 17:19 ROOT/
drwxr-x--- 7 tomcat8 tomcat8     4096 10월  5 10:54 eGovFrame_test/
-rwxrwxrwx 1 tomcat8 tomcat8 20402519 10월  5 10:53 eGovFrame_test.war*

sudo service tomcat8 stop

sudo service tomcat8 start로 톰캣 서버를 재기동시킨 뒤

systemctl status tomcat8.service 명령어로 active (running) ~ 을 확인하면 정상적으로 배포가 완료됐다.

sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ sudo service tomcat8 stop
sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ sudo service tomcat8 start
sso@sso-System-Product-Name:/var/lib/tomcat8/webapps$ systemctl status tomcat8.service
● tomcat8.service - LSB: Start Tomcat.
   Loaded: loaded (/etc/init.d/tomcat8; generated)
   Active: active (running) since Tue 2021-10-05 10:56:55 KST; 8s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 9069 ExecStop=/etc/init.d/tomcat8 stop (code=exited, status=0/SUCCESS)
  Process: 9122 ExecStart=/etc/init.d/tomcat8 start (code=exited, status=0/SUCCESS)
    Tasks: 39 (limit: 4915)
   CGroup: /system.slice/tomcat8.service
           └─9167 /usr/lib/jvm/default-java/bin/java -Djava.util.logging.config.file=/var/lib/tomcat8/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.awt.headle

크롬 홈페이지에서 http://서버ip:8080/eGovFrame_test/ 를 입력하면 eGovFrame 게시판 만들기 0탄에서 만들어놓은 예제 프로젝트와 동일한 화면을 볼 수 있다.

2탄에서는 해당 홈페이지에 DB를 연동해볼 계획이다.

반응형

댓글