Installing Tomcat 10 - ndexbio/ndex-rest GitHub Wiki

DISCLAIMER: This may contain errors, use at own risk. You have been warned

This page describes the steps to put tomcat10 onto NDEx server

Step 1 - Download Tomcat

Run the commands below on server as user ndex, but update the version by looking for latest stable version at:

https://tomcat.apache.org/download-10.cgi

# as user ndex
cd /opt/ndex
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.1.25/bin/apache-tomcat-10.1.25.tar.gz

NOTE: URL above most likely will change, check at https://tomcat.apache.org/download-10.cgi

Step 2 Verify downloaded file

Verify the downloaded file against sha512 by running this command (adjust file name based on what is downloaded)

shasum -a 512 apache-tomcat-10.1.25.tar.gz

Compare above with (adjust filename to match):

https://downloads.apache.org/tomcat/tomcat-10/v10.1.25/bin/apache-tomcat-10.1.25.tar.gz.sha512

Step 3 Create symlink

Still as user ndex create the following symlink (if updating live system this can be delayed, but anywhere /opt/ndex/tomcat is mentioned just go to /opt/ndex/apache-tomcat-10.1.25 or whatever version downloaded)

cd /opt/ndex
ln -s apache-tomcat-10.1.25 tomcat

Step 4 update tomcat config

Update the server.xml configuration

Edit /opt/ndex/tomcat/conf/server.xml and do the following:

Comment out ajp connector

If not already done comment out AJP connector wrapping in <!-- and --> like below

<!-- Define an AJP 1.3 Connector on port 8009 -->
    <!--
    <Connector port="8009" protocol="AJP/1.3" redirectPort="8443"  URIEncoding="UTF-8" 
      maxPostSize="-1" connectionTimeout="400000" keepAliveTimeout="400000" 
      maxConnections="150" executor="tomcatThreadPool"/>
    -->

Update HTTP connector

Change port to 8009, remove redirectPort="8443", add maxPostSize="-1", and maxConnections="150" like so

<Connector executor="tomcatThreadPool"
               port="8009" protocol="HTTP/1.1"
               connectionTimeout="400000"
               keepAliveTimeout="400000"
               compression="on"
               compressionMinSize="2048"
               maxPostSize="-1"
               maxConnections="150"
               noCompressionUserAgents="gozilla, traviata"
               compressableMimeType="text/html,text/xml,application/json,application/x-javascript,text/javascript,text/x-javascript,text/x-json"/>