0

I need to install tomcat Version 9.0.35 and deploy some war files and install some related files. Can you suggest how to do this.

So, direct dumping of files is not an option.I got one sh file for that.Main page link The required prerequisite is installed.

In the sh file, changed the URL and updated the curl file to this link It is a different version of tomcat but still used for testing.

But I am getting this error.

Invalid package configuration: Cannot chdir to 'tomcat-packaging/'. Does it exist? {:level=>:error}

I guess this folder should be there but missing details about it. So deleted that folder line and tried. Now, getting this error:

Missing required -s flag. What package source did you want? {:level=>:warn} Missing required -t flag. What package output did you want? {:level=>:warn} No parameters given. You need to pass additional command arguments so that I know what you want to build packages from. For example, for '-s dir' you would pass a list of files and directories. For '-s gem' you would pass a one or more gems to package from. As a full example, this will make an rpm of the 'json' rubygem: fpm -s gem -t rpm json {:level=>:warn}

My modified sh file:

#!/bin/bash -xe
#
# sudo gem install fpm
# sudo apt-get install curl
# # Put this script in a folder called tomcat-packaging
# ./mkdeb.sh 7.0.40
# ./mkdeb.sh 6.0.37
#

VERSION=$1
VERSION_=${VERSION//./}
MAJOR=${VERSION:0:1}

rm -rf ./usr/local/*
mkdir -p ./usr/local/share/
pushd ./usr/local/share/
curl "https://mirrors.estointernet.in/apache/tomcat/tomcat-${MAJOR}/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz" | tar -xz
#curl "http://mirror.catn.com/pub/apache/tomcat/tomcat-${MAJOR}/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gz" | tar -xz
popd
cd ..
rm -f *.deb

    fpm -n tomcat${VERSION_} \
        -v ${VERSION}-0custom1 \
        -d default-jre \
        -a all \
        --vendor apache \
        --license 'Apache Version 2.0' \
        #-C tomcat-packaging/ \
        -m "DSI <dsi@custom.com>" \
        -t deb \
        -s dir \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/web.xml \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/context.xml \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/catalina.policy \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/catalina.properties \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/tomcat-users.xml \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/logging.properties \
        --config-files usr/local/share/apache-tomcat-${VERSION}/conf/server.xml \
        --description "Apache Tomcat is an open source software implementation of the Java Servlet and JavaServer Pages technologies." \
        --url 'http://tomcat.apache.org/' \
        usr

# Add these?
# --pre-install ./tomcat.preinstall \
# --post-install ./tomcat.postinstall \

I am running the file as below.

./tomcatdeb.sh 9.0.43
uday
  • 352
  • 10
  • 30
  • 1
    What have you tried? How did it fail? – Esa Jokinen Feb 28 '21 at 09:34
  • I have added few details, can you check once – uday Feb 28 '21 at 11:09
  • There is no need to package Tomcat with your application, just add a dependency upon the `tomcat9` (Tomcat 9 server ready to start) or `tomcat9-common` (Tomcat 9 libraries). – Piotr P. Karwasz Mar 02 '21 at 20:56
  • That will keep a common tomcat system wide. But we need a tomcat specific to our application with a separate port for it and all its configurations are separate. – uday Mar 15 '21 at 13:14

0 Answers0