Tomcat Server
Embedded Tomcat
Service Installation
Standalone Tomcat
References
Tomcat User
sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat
sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod -R u+x /opt/tomcat/bin
Installation
cd /tmp
Download Tomcat
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.73/bin/apache-tomcat-9.0.73.tar.gz
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.89/bin/apache-tomcat-9.0.89.tar.gz
Untar tomcat
mkdir -p /opt/tomcat
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
Giving admin permission
Ubuntu
sudo vim /opt/tomcat/conf/tomcat-users.xml
- Inside
<role rolename="manager-gui" />
<user username="manager" password="manager" roles="manager-gui" />
<role rolename="admin-gui" />
<user username="admin" password="admin" roles="manager-gui,admin-gui" />
Remove valve
sudo vim /opt/tomcat/webapps/manager/META-INF/context.xml
sudo vim /opt/tomcat/webapps/host-manager/META-INF/context.xml
Comment out valve
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
Systemd Service
sudo vim /etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
sudo systemctl start tomcat
sudo systemctl status tomcat
Deploying web application
Deploy a Spring Boot WAR into a Tomcat Server | Baeldung
SSL Enable
- Tomcat: CSR Creation & SSL Certificate Installation
- Apache Tomcat 7 (7.0.109) - SSL/TLS Configuration HOW-TO