---
title: 'Ubuntu 22.04 install tomcat9'
tags: tomcat,ubuntu
description: Ubuntu 22.04 install tomcat9
---
# Ubuntu 22.04 install tomcat9
---
[TOC]
---
## Ubuntu 初始化
``` terminal
sudo apt update
sudo apt upgrade
```
---
## 安裝JDK17
``` terminal
sudo apt-get install openjdk-17-jdk -y
```
---
## 下載Tomcat9
``` terminal
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.73/bin/apache-tomcat-9.0.73.tar.gz
```
---
## 新增Tomcat user
``` terminal
sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
```
---
## 安裝Tomcat
``` terminal
sudo tar -xf ./apache-tomcat-9.0.73.tar.gz -C /opt/tomcat/
```
連結虛擬資料夾
``` terminal
sudo ln -s /opt/tomcat/apache-tomcat-9.0.73 /opt/tomcat/latest
```
改變擁有者&權限
``` terminal
sudo chown -R tomcat: /opt/tomcat
sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'
```
---
## 設定Tomcat service
``` terminal
sudo vim /etc/systemd/system/tomcat.service
...
[Unit]
Description=Tomcat 9 servlet container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"
Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
```
``` terminal
sudo systemctl daemon-reload
sudo systemctl enable --now tomcat
sudo systemctl status tomcat
```
服務指令
``` terminal
sudo systemctl start tomcat
sudo systemctl stop tomcat
sudo systemctl restart tomcat
```
---
## 設定Firewall
``` terminal
sudo ufw allow 8080/tcp
```
---
## 開通管理介面
修改tomcat-users.xml
``` terminal
sudo vim /opt/tomcat/apache-tomcat-9.0.73/conf/tomcat-users.xml
```
``` xml
...
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin" password="******" roles="manager-gui,admin-gui"/>
<user username="nec" password="******" roles="manager-script,manager-gui"/>
...
```
修改/manager/META-INF/context.xml
``` terminal
sudo vim /opt/tomcat/apache-tomcat-9.0.73/webapps/manager/META-INF/context.xml
```
``` xml
...
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="192\.168\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
...
```
瀏覽browser,http://192.168.10.241:8080/,點擊manager webapp

輸入剛剛的帳密


---
## 參考連結
https://linuxize.com/post/how-to-install-tomcat-10-on-ubuntu-22-04/
---