[Tomcat 설치] 리눅스 환경에서 OpenJDK설치 & Java Path 잡기

2023. 8. 17. 23:08초기 과업/DevSecOps

작성자알 수 없는 사용자

728x90
반응형

 

안녕하세요. 기깔나는 사람들에서 DMSO를 맡고있는 정우입니다.

Jenkins에서 Java가 설치되어 있어야 하기 때문에 

Tomcat을 연결 해보겠습니다.

 

 

 


 

우선 윈도우나 맥환경이면 직접 접속을 해서 톰캣을 설치하겠지만 

리눅스 환경에서는 직접 가져와보겠습니다.

 

wget -c http://archive.apache.org/dist/tomcat/tomcat-8/v8.5.78/bin/apache-tomcat-8.5.78.tar.gz

 

 

가져왔다면 apache gzip파일이 생길텐데요

압축을 풀어보겠습니다.

 

tar -zxvf apache-tomcat-8.5.78.tar.gz

 

 

java가 설치되어있는지 확인해주겠습니다.

javac --version

 

설치가 되어있지않으니

 

open jdk를 설치해주겠습니다.

저는 11버전으로 설치하겠습니다.

sudo apt install openjdk-11-jdk-headless

 

 

 

설치가 완료됐다면 

Java를 환경변수에 설정해줄텐데요 

아마 환경변수가 설정 되어있지 않을 겁니다.

echo $JAVA_HOME

 

 

java가 어디 설치되어있는지 확인하고 싶다면

which javac

 

openJDK위치도 확인해볼게요

readlink -f /usr/bin/javac

 

 

이제 확인이 됐다면 

환경변수 설정하러 가봅시다

 

내 홈 디렉터리로 이동해줄게요

 

이중에 .profile 파일을 vi로 열어줍니다.

 

맨 아래에 path를 잡아줍니다.

...

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/
export PATH=$JAVA_HOME/bin:$PATH

 

 

vi를 확인하고 나왔다면 source로 환경변수를 먹여줄게요

 

 

그럼 이제 JAVA_HOME이 환경변수로 설정된 것을 볼 수 있습니다.

 


원래 Default 톰캣 포트는 8080이지만 Jenkins를 8080으로 사용해서

저는 8088번으로 바꿔주겠습니다.

 

 

apache-tomacat 설치위치 / conf / server.xml 에서 포트번호 변경

 

 

~/apache-tomcat 설치 위치 /webapps/host-manager/META-INF/ context.xml 부분에 

127.0.0.1 설정 부분을 주석처리해줍니다.

 

 

 

 

Jenkins에서 특정 유저를 사용하기 위해

유저를 추가하고 role도 추가해주겠습니다.

~/apache-tomcat 설치 위치/conf/tomcat_user.xml

<tomcat-users>
<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="admin" password="admin" roles="admin,manager,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" />
<user username="deployer" password="deployer" roles="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>
</tomcat-users>

 

 

 

위에 대로 설정했으면

http://내IP:8088/manager/html 

 

 

admin 계정으로 들어가보면

잘 배포 된것이 보여집니다.

 

 

만약 위에로도 설정이 되지 않는다면

https://dejavuhyo.github.io/posts/tomcat-manager/

 

Tomcat Manager 설정 (403 Access Denied)

Jenkins에서 war 파일 배포를 위해 manager 접속이 필요하다. manager 기능은 보안 문제 때문에 기본적으로 막혀 있다. 설정 없이 접속을 하면 403 Access Denied 에러가 나기 때문에 아래 설정이 필요하다.

dejavuhyo.github.io

 

 

 

기본적인 설정이 완료 되면 

다시 실행해보겠습니다.

 

● 실행하기전 다른 터미널 창에서 로그 확인해보면 좋습니다.

~/apache-tomcat 설치 위치/logs/ 이동

tail -f catalina.오늘날짜.log

엔터를 치고 실행하러 가보겠습니다.

 

 

~/apache-tomcat 설치 위치/bin/ 이동

./startup.sh

 

 

 

 

정상적으로 실행되면 성공입니다.

만약 특정 포트가 이미 사용중이라면

 

절대!!! 내 로컬이 아니라면 process kill하지 말것!!!!!!

 

아래확인 ▼

더보기

java.net.BindException: Address already in use (Bind failed)

 

8005번 포트가 사용중입니다.

 

그럼 다시 

apache-tomacat 설치위치 / conf / server.xml 에서 포트번호를 변경해주겠습니다

Server port ="8006"

 

 다시 실행해볼게요

 

 

 

 

톰캣 설치 완료입니다!

 


 

 

 

 

 

728x90
반응형