Computer >> 컴퓨터 >  >> 시스템 >> Linux

Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

Apache Tomcat(Tomcat Server라고도 함)은 Java 기반 웹 애플리케이션을 구동하기 위한 서블릿 컨테이너를 갖춘 오픈소스 웹 서버입니다. Tomcat에는 JSP(JavaServer Pages), WebSocket, Java Servlet, Java EL 등이 포함되어 있어 Java 코드를 실행할 수 있는 완전한 Java HTTP 웹 서버 환경을 제공합니다.

숙련된 개발자들로 구성된 강력한 커뮤니티가 Apache 소프트웨어 재단(Apache Software Foundation)의 관리 아래 Tomcat 서버를 지속적으로 유지 관리하고 있습니다. 덕분에 Tomcat 서버는 Java 기반 애플리케이션을 효율적으로 개발·운영할 수 있는 뛰어난 접근성을 제공합니다. 또한 크로스 플랫폼을 지원하므로 Windows와 Linux 어느 환경에서든 사용할 수 있습니다. 현재 Apache Tomcat의 최신 버전은 10.0.18이며, 이 가이드에서는 Ubuntu 20.04에 Apache Tomcat 10을 설치하는 방법을 단계별로 살펴보겠습니다.

1. Java 최신 버전 설치

먼저, 시스템에 Ubuntu 20.04를 새로 설치한 경우라면 Apache Tomcat을 설정하기 전에 Linux에서 새 사용자 계정을 추가해야 합니다.

앞서 언급했듯이 Apache Tomcat은 Java 기반 애플리케이션을 위해 사용되므로 최신 버전의 Java가 필요합니다. 최신 버전의 Apache Tomcat이 정상적으로 작동하려면 JDK 8(Java Development Kit) 이상이 필요합니다. Linux 터미널에서 다음 명령어를 실행하여 최신 버전의 JDK를 설치할 수 있습니다:

sudo apt update
sudo apt install default-jdk -y
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

위 명령어에서 -y 옵션은 설치 확인 절차를 자동으로 건너뛰기 위해 사용했습니다. 설치가 완료되면 다음 명령어로 Java 버전을 확인하고 검증합니다:

java -version
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

위 화면에서 볼 수 있듯이 최신 버전인 OpenJDK 11.0.14가 설치되어 있으며, OpenJDK Runtime Environment와 서버에 대한 주요 정보도 함께 표시됩니다.

2. Apache Tomcat 10 설치

Apache Tomcat은 활발한 개발팀이 정기적으로 최신 업데이트를 배포하고 있으므로, 아래 명령어를 사용해 공식 서버에서 다운로드하세요:

wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.18/bin/apache-tomcat-10.0.18.tar.gz
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

이 가이드를 작성 시점 이후에 읽고 있고 10.0.18보다 새로운 버전이 출시되었다면, 위 명령어의 버전 번호를 반드시 변경해야 합니다. 그렇지 않으면 명령어가 작동하지 않아 다운로드 과정에서 오류가 발생합니다.

Tomcat tar.gz 파일 다운로드가 완료되면 아래 명령어로 tar 아카이브를 추출합니다:

tar xvf apache-tomcat-10.0.18.tar.gz
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

이제 아래 명령어를 사용해 추출된 파일을 /usr/share/apache-tomcat 디렉터리로 이동합니다:

sudo mv apache-tomcat-10.0.18 /usr/share/apache-tomcat
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

참고로, 아래 명령어를 사용하면 추출과 이동을 한 번에 처리할 수도 있습니다:

sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1 

3. Tomcat 사용자 계정 설정

보안을 위해 특정 사용자 계정으로 Tomcat 서버를 실행하는 것이 좋습니다. 아래 명령어를 실행해 새 사용자 계정을 생성합니다:

sudo nano /opt/tomcat/conf/tomcat-users.xml

파일을 연 후 요구 사항에 맞게 사용자 이름과 비밀번호를 수정하고 저장합니다.

Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

역할(role)은 managerhost-manager로 변경하고, 각각에 맞는 비밀번호를 설정합니다.

마지막으로 아래와 같이 Tomcat 디렉터리에 필요한 파일 권한을 설정합니다:

sudo chown -R tomcat:tomcat /opt/tomcat/ 
sudo chmod -R u+x /opt/tomcat/bin
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

4. Apache Tomcat 외부 접근 허용

host-manager와 tomcat manager 애플리케이션은 기본적으로 localhost에서만 접근할 수 있으므로, 접근 권한을 구성하는 것이 중요합니다. 접근을 허용하는 방법은 특정 원격 시스템만 허용하는 방법과 모든 시스템을 허용하는 방법 두 가지가 있습니다. manager 및 host-manager 애플리케이션의 context.xml 파일을 열어 편집합니다:

sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

이제 접근에 사용할 IP 주소를 해당 줄에 추가합니다. 자신의 IP 주소를 모른다면 Linux에서 IP 주소를 확인하는 방법을 참고하세요:

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|10.0.2.15" />
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

마지막으로 파일을 저장하면 시스템이 manager와 host-manager에 대한 접근을 허용합니다.

5. Tomcat systemd 서비스 파일 설정

Tomcat은 서비스를 시작하고 중지할 수 있는 bash 스크립트를 제공합니다. 하지만 systemd 서비스로 등록하면 모든 작업을 더 체계적으로 관리할 수 있습니다. 먼저 아래 명령어로 tomcat.service 파일을 생성하고 엽니다:

sudo nano /etc/systemd/system/tomcat.service
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

이제 아래 내용을 에디터에 붙여넣고 저장합니다:

[Unit]
Description=Tomcat
After=syslog.target network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment=JAVA_HOME=/usr/lib/jvm/default-java
Environment='JAVA_OPTS=-Djava.awt.headless=true'
Environment=CATALINA_HOME=/usr/share/apache-tomcat
Environment=CATALINA_BASE=/usr/share/apache-tomcat
Environment=CATALINA_PID=/usr/share/apache-tomcat/temp/tomcat.pid
ExecStart=/usr/share/apache-tomcat/bin/catalina.sh start
ExecStop=/usr/share/apache-tomcat/bin/catalina.sh stop
[Install]
WantedBy=multi-user.target
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

파일의 변경 사항을 적용하기 위해 아래 명령어로 systemd 데몬을 다시 로드합니다:

sudo systemctl daemon-reload

그다음 아래 명령어로 Tomcat 서비스를 시작하고 부팅 시 자동 실행되도록 활성화합니다:

sudo systemctl start tomcat.service
sudo systemctl enable tomcat.service
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

터미널에서 다음 명령어를 실행해 Tomcat 서비스 상태를 확인해 보겠습니다:

sudo systemctl status tomcat.service
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

위 화면처럼 상태가 "active (running)"으로 표시되면 정상적으로 실행 중인 것입니다.

6. Tomcat 웹 서버 접속

기본적으로 Tomcat 서버는 8080번 포트에서 실행되지만, 아래 명령어로 직접 확인할 수 있습니다:

sudo ss -tunelp | grep 8080
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

이제 웹 브라우저에서 Tomcat 서버에 접속합니다:

https://localhost:8080/
Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

마지막으로, 설정한 사용자 이름과 비밀번호를 입력해 Linux 머신에서 Tomcat 10에 로그인합니다.

Ubuntu 20.04에 Apache Tomcat 10 설치하는 완벽 가이드

웹 인터페이스에서는 서버 상태 확인, Manager 앱 다운로드, Host Manager 관리 등을 할 수 있습니다. 만약 웹 브라우저에서 Tomcat 10에 접속하는 동안 오류가 발생한다면 tomcat.service를 다시 로드(restart)해 보세요. 이렇게 하면 Tomcat 서비스가 새롭게 시작되면서 모든 데이터가 올바르게 로드됩니다. 서비스 재시작 후에는 앞서 안내한 대로 start, enable, status 명령어로 서비스를 다시 확인하세요.

Apache Tomcat 10 설치 완료!

지금까지 Ubuntu 20.04에 Apache Tomcat 10을 손쉽게 설치하고 설정하는 방법을 알아보았습니다. 전체 과정은 여섯 단계로 나누어 설명했으며, Tomcat 10 설치에 필요한 모든 내용을 빠짐없이 다루었습니다.

Apache Tomcat을 성공적으로 구축하려면 각 단계를 순서대로 하나씩 따라 하는 것이 매우 중요합니다. 설치 과정이 복잡하게 느껴질 수 있지만, 전체 흐름은 Tomcat 10 설치로 시작해 웹 브라우저에서 Tomcat 서버에 접속하는 것으로 끝납니다. 위 방법에서 소개한 몇 가지 유용한 팁과 단축 방법들을 활용하면 더욱 쉽고 빠르게 설치를 완료할 수 있습니다.