Mercurial > public > ssdt-docker
changeset 525:c941bcc97e5b
flow: Merged <hotfix> '2.16.1' to <develop> ('default').
author | Marc Davis <marc.davis@mcoecn.org> |
---|---|
date | Tue, 30 Jan 2024 10:55:15 -0500 |
parents | cb672d0888c6 (diff) 11593e9300f2 (current diff) |
children | cb688221b17b |
files | testbench-grid-17/Dockerfile testbench-node-17/Dockerfile |
diffstat | 26 files changed, 483 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/java-17/Dockerfile Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,17 @@ +FROM openjdk:17-buster + +MAINTAINER Marc Davis <davis@ssdt-ohio.org> + +RUN ls && echo "deb http://deb.debian.org/debian buster main contrib" > /etc/apt/sources.list \ + && echo "deb http://security.debian.org/debian-security/ buster/updates main contrib" >> /etc/apt/sources.list \ + && echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections \ + && apt-get update \ + && apt-get install -y ttf-mscorefonts-installer \ + && apt-get clean \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* + +ENV TZ=America/New_York + +RUN echo $TZ > /etc/timezone \ + && dpkg-reconfigure --frontend noninteractive tzdata
--- a/java/Dockerfile Tue Jan 30 10:55:03 2024 -0500 +++ b/java/Dockerfile Tue Jan 30 10:55:15 2024 -0500 @@ -1,6 +1,6 @@ FROM openjdk:8u181-jdk -MAINTAINER Dave Smith <smith@nwoca.org> +MAINTAINER Marc Davis <davis@ssdt-ohio.org> RUN echo "deb http://httpredir.debian.org/debian jessie main contrib" > /etc/apt/sources.list \ && echo "deb http://security.debian.org/ jessie/updates main contrib" >> /etc/apt/sources.list \
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/prod/anon-inventory.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,28 @@ +# +# Copyright (c) 2023. Ohio Department of Education. - All Rights Reserved. +# Unauthorized copying of this file, in any medium, is strictly prohibited. +# Written by the State Software Development Team (http://ssdt.oecn.k12.oh.us/) +# +# + +#!/bin/bash + +#!/bin/bash +# +BASEDIR="$PWD" +# read required environment variables +source $BASEDIR/.env/ssdt-inventory-shared.properties +source $BASEDIR/.env/ssdt-inventory-import.properties +# +# docker login +echo "Attempting to login to $artifactUrl" +docker login $artifactUrl -u $artifactUser -p $artifactPassword +# docker pull +echo "Attempting to pull inventory-anon:1.0.0" +docker pull $artifactUrl/inventory-anon:1.0.0 +# +dockerParams="--rm --name $entityId-inventory-anonapp --network $entityId-inventory-net" +dockerParams="$dockerParams -e SPRING_DATASOURCE_URL=jdbc:postgresql://$entityId-inventory-db:5432/invdb -e SPRING_DATASOURCE_PASSWORD=postgres" +dockerParams="$dockerParams -e SPRING_PROFILES_ACTIVE=prod -i inventory-anon:1.0.0" +echo "Executing docker run command" +docker run $dockerParams \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/prod/install-ess-db.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,26 @@ +#!/bin/bash +# +# read required env variables +BASEDIR="$PWD" +source $BASEDIR/.env/ess-shared.properties +source $BASEDIR/.env/ess-db.properties +# +# docker login +echo "attempting to login to $artifactoryUrl" +docker login $artifactoryUrl -u $artifactoryUser -p $artifactoryPassword +# docker pull db image +echo "attempting to pull $artifactoryUrl/ess-db:$dbVersion" +docker pull $artifactoryUrl/ess-db:$dbVersion +# +# create employee self service specific docker network for $entityId +echo "attempting to create $entityId-ess-net docker network" +docker network create $entityId-ess-net +# docker run ess-db (data mounted as volume) connected to $entityId-ess-net docker network +echo "attempting to execute docker run command" +docker run --name $entityId-ess-db \ + --restart=unless-stopped \ + --mount source=$entityId-ess-db,target=/var/lib/postgresql/data \ + --network $entityId-ess-net \ + -e POSTGRES_DB=essdb \ + -e POSTGRES_PASSWORD=$dbPassword \ + -d $artifactUrl/ess-db:$dbVersion \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/backup-document-store.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,36 @@ +#!/bin/bash + +projectDir=${1:-$PWD} + +cd "$projectDir" || echo "Unable to change to project directory: $projectDir" + +function prop { + grep "${1}" .env/ssdt-document-store-shared.properties|cut -d'=' -f2 +} + +entityId=$(prop 'entityId' | tr -d '"') +repository="${entityId}_fs_backup" +certificate=${projectDir}/http_ca.crt +baseUrl="https://$(prop 'DOCUMENTSTORE_ELASTIC_HOST' | tr -d '"'):$(prop 'DOCUMENTSTORE_ELASTIC_PORT' | tr -d '"')" +elasticPassword=$(prop 'ELASTIC_PASSWORD' | tr -d '"') + +verifyRepository=$(curl --cacert "${certificate}" -s -u elastic:"${elasticPassword}" -X POST "${baseUrl}/_snapshot/${repository}/_verify?pretty") + +countMissingException=$(echo "${verifyRepository}" | grep -c "repository_missing_exception") + +if [ "$countMissingException" -gt 0 ]; then + echo "creating Repository ${repository}" + curl --cacert "${certificate}" -s -u elastic:"${elasticPassword}" -X PUT "${baseUrl}/_snapshot/${repository}?pretty" -H 'Content-Type: application/json' -d' + { + "type": "fs", + "settings": { + "location": "/usr/share/elasticsearch/backup", + "compress": true + } + } + ' +fi + +snapshotName="%3C${entityId}-snapshot-%7Bnow%2Fs%7Byyyy.MM.dd-HH.mm.ss%7D%7D%3E" + +curl --cacert "${certificate}" -s -u elastic:"${elasticPassword}" -X PUT "${baseUrl}/_snapshot/${repository}/${snapshotName}?pretty"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/list-document-store-snapshots.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,20 @@ +#!/bin/bash + +projectDir=${1:-$PWD} +detailedView=${2:-false} + +cd "$projectDir" || echo "Unable to change to project directory: $projectDir" + +function prop { + grep "${1}" .env/ssdt-document-store-shared.properties|cut -d'=' -f2 +} + +entityId=$(prop 'entityId' | tr -d '"') +repository="${entityId}_fs_backup" +certificate=${projectDir}/http_ca.crt +baseUrl="https://$(prop 'DOCUMENTSTORE_ELASTIC_HOST' | tr -d '"'):$(prop 'DOCUMENTSTORE_ELASTIC_PORT' | tr -d '"')" +elasticPassword=$(prop 'ELASTIC_PASSWORD' | tr -d '"') + +options="pretty&verbose=${detailedView}&index_names=${detailedView}&ignore_unavailable=true" + +curl --cacert "${certificate}" -s -u elastic:"${elasticPassword}" -X GET "${baseUrl}/_snapshot/${repository}/_all?${options}" \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/restore-document-store.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,18 @@ +#!/bin/bash + +projectDir=${1:-$PWD} +snapshot=${2?Must provide snapshot name to restore} + +cd "$projectDir" || echo "Unable to change to project directory: $projectDir" + +function prop { + grep "${1}" .env/ssdt-document-store-shared.properties|cut -d'=' -f2 +} + +entityId=$(prop 'entityId' | tr -d '"') +repository="${entityId}_fs_backup" +certificate=${projectDir}/http_ca.crt +baseUrl="https://$(prop 'DOCUMENTSTORE_ELASTIC_HOST' | tr -d '"'):$(prop 'DOCUMENTSTORE_ELASTIC_PORT' | tr -d '"')" +elasticPassword=$(prop 'ELASTIC_PASSWORD' | tr -d '"') + +curl --cacert "${certificate}" -s -u elastic:"${elasticPassword}" -X POST "${baseUrl}/_snapshot/${repository}/${snapshot}/_restore?pretty" \ No newline at end of file
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testbench-grid-17/Dockerfile Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,13 @@ +FROM openjdk:17 + +MAINTAINER Catherine Aldrich + +ENV TESTBENCHJAR=/testbench-standalone.jar + +ADD ./vaadin-testbench-standalone-5.2.0.jar $TESTBENCHJAR + +EXPOSE 4444 + +WORKDIR / + +CMD ["java", "-jar", "testbench-standalone.jar", "-role", "hub" ]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testbench-grid-17/docker-compose.yml Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,18 @@ +grid: +# image: testbench-grid:2.0 +# image: testbench-grid:2.2 +# image: testbench-grid:latest + image: testbench-grid:3.0 + ports: + - 4444:4444 +node: +# image: testbench-node:2.0 +# image: testbench-node:2.1 +# image: testbench-node:2.3 +# image: testbench-node:latest + image: testbench-node:3.0 + links: + - grid + environment: + - HUB_HOST=grid_1 +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testbench-grid-17/starting.txt Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,4 @@ +#Use docker-compose scale to start: docker-compose scale node=20 +#also need to start the grid: docker-compose up -d grid +##Use "latest" for old testbench, 2.0 for newest +##Start grid FIRST and give it time to come up
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testbench-node-17/Dockerfile Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,48 @@ +FROM openjdk:17-buster + +MAINTAINER Catherine Aldrich + +ENV TESTBENCHJAR=/testbench-standalone.jar + +# Install PhantomJS +RUN mkdir /phantom +WORKDIR /phantom +ADD http://files.ssdt.io/phantomjs-2.1.1-linux-x86_64.tar /phantom/phantomjs.tar +RUN tar -xf phantomjs.tar \ + && mv $(find /phantom -name phantomjs) /bin \ + && rm -rf /phantom +WORKDIR / + +RUN apt-get update -y + +# Install Chrome browser +ARG CHROME_84="84.0.4147.30" +ARG CHROME_85="85.0.4183.83-1" +ARG CHROME_86="86.0.4240.22-1" +RUN wget --no-verbose -O /tmp/chrome.deb http://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${CHROME_85}_amd64.deb \ + && apt install -y /tmp/chrome.deb \ + && rm /tmp/chrome.deb + +## Install Chromium driver +ADD ./chromedriver_linux64_85.zip . +RUN unzip chromedriver_linux64_85.zip -d / +RUN mv -f /chromedriver /usr/local/bin/chromedriver +RUN chmod 0777 /usr/local/bin/chromedriver +RUN rm -rf ./chromedriver_linux64_85.zip + +# Add TestBench jar +ADD ./vaadin-testbench-standalone-5.2.0.jar $TESTBENCHJAR + +COPY ./docker-entrypoint.sh / +RUN chmod a+x /docker-entrypoint.sh + +RUN apt-get update -y + +RUN chmod 0777 /usr/bin/google-chrome + +RUN /usr/bin/google-chrome --version +RUN /usr/local/bin/chromedriver --version + +ENTRYPOINT [ "./docker-entrypoint.sh" ] + +CMD [ "node" ]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testbench-node-17/docker-entrypoint.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,15 @@ +#!/bin/bash +set -e + +case "$1" in + + node) + java -jar testbench-standalone.jar -role node -hub http://$HUB_HOST:4444/grid/register -browser "browserName=chrome" + ;; + + *) + exec "$@" + ;; + +esac +
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomcat-17/Dockerfile Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,38 @@ +FROM tomcat:8.5.93-jre17-temurin-jammy + +MAINTAINER Marc Davis <davis@ssdt-ohio.org> + +RUN apt-get update && apt-get install -y gnupg && apt-get install -y apt-transport-https \ + && gpg --no-default-keyring --keyring /etc/apt/trusted.gpg.d/ubuntu-keyring-2012-cdimage.gpg --export > /etc/apt/trusted.gpg.d/ubuntu-keyring.fixed.gpg \ + && gpg --no-default-keyring --keyring /etc/apt/trusted.gpg.d/ubuntu-keyring-2018-archive.gpg --export > /etc/apt/trusted.gpg.d/ubuntu-keyring.fixed.gpg \ + && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 871920D1991BC93C && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 112695A0E562B32A \ + && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys AA8E81B4331F7F50 && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 04EE7237B7D453EC 648ACFD622F3D138 0E98404D386FA1D9 EF0F382A1A7B6500 + +RUN apt-get update && apt-get install -y x11-common + +RUN echo "deb http://deb.debian.org/debian buster main contrib non-free" > /etc/apt/sources.list \ + && echo "deb http://security.debian.org/debian-security/ buster/updates main contrib" >> /etc/apt/sources.list \ + && echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections + + +RUN apt-get update \ + && apt-get install -y ttf-mscorefonts-installer \ + && apt-get clean \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* + +RUN apt-get update \ + && apt-get install -y postgresql-client \ + && apt-get clean \ + && apt-get autoremove -y \ + && rm -rf /var/lib/apt/lists/* + +WORKDIR /usr/local/tomcat + +COPY setenv.sh bin/ +COPY tomcat-users.xml server.xml context.xml logging.properties conf/ + +RUN rm -rf webapps/docs webapps/ROOT webapps/examples webapps/docs webapps/host-manager \ + && chmod +x bin/setenv.sh + +ENV TZ=America/New_York
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomcat-17/context.xml Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,30 @@ +<?xml version='1.0' encoding='utf-8'?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<Context> + + <Resources cachingAllowed="false"/> + + <!-- Uncomment this to disable session persistence across Tomcat restarts --> + <Manager pathname="" /> + + <!-- Uncomment this to enable Comet connection tacking (provides events + on session expiration as well as webapp lifecycle) --> + <!-- + <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" /> + --> +</Context>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomcat-17/logging.properties Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,70 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +handlers = 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler + +.handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler + +############################################################ +# Handler specific properties. +# Describes specific configuration info for Handlers. +############################################################ + +1catalina.org.apache.juli.AsyncFileHandler.level = FINE +1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina. + +2localhost.org.apache.juli.AsyncFileHandler.level = FINE +2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost. + +3manager.org.apache.juli.AsyncFileHandler.level = FINE +3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +3manager.org.apache.juli.AsyncFileHandler.prefix = manager. + +#4host-manager.org.apache.juli.AsyncFileHandler.level = FINE +#4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs +#4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. + +java.util.logging.ConsoleHandler.level = FINE +java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter + + +############################################################ +# Facility specific properties. +# Provides extra control for each logger. +############################################################ + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.AsyncFileHandler + +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO +org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler + +#org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO +#org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler + +# For example, set the org.apache.catalina.util.LifecycleBase logger to log +# each component that extends LifecycleBase changing state: +#org.apache.catalina.util.LifecycleBase.level = FINE + +# To see debug messages in TldLocationsCache, uncomment the following line: +#org.apache.jasper.compiler.TldLocationsCache.level = FINE + +# To see debug messages for HTTP/2 handling, uncomment the following line: +#org.apache.coyote.http2.level = FINE + +# To see debug messages for WebSocket handling, uncomment the following line: +#org.apache.tomcat.websocket.level = FINE
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomcat-17/server.xml Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,76 @@ +<?xml version='1.0' encoding='utf-8'?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<Server port="8005" shutdown="SHUTDOWN"> + <Listener className="org.apache.catalina.startup.VersionLoggerListener" /> + <!-- Security listener. Documentation at /docs/config/listeners.html + <Listener className="org.apache.catalina.security.SecurityListener" /> + --> + <!--APR library loader. Documentation at /docs/apr.html --> + <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" /> + <!-- Prevent memory leaks due to use of particular java/javax APIs--> + <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" /> + <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" /> + <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" /> + + + <GlobalNamingResources> + <Resource name="UserDatabase" auth="Container" + type="org.apache.catalina.UserDatabase" + description="User database for tomcat manager app" + factory="org.apache.catalina.users.MemoryUserDatabaseFactory" + pathname="conf/tomcat-users.xml" /> + </GlobalNamingResources> + + <Service name="Catalina"> + + <Executor name="tomcatThreads" + namePrefix="tomcat-exec-" + maxThreads="200" + minSpareThreads="1" + maxIdleTime="300000" + /> + + <Connector port="8080" protocol="HTTP/1.1" + connectionTimeout="20000" + redirectPort="8443" + executor="tomcatThreads"/> + + <Engine name="Catalina" defaultHost="localhost"> + + <!-- Use the LockOutRealm to prevent attempts to guess user passwords + via a brute-force attack --> + <Realm className="org.apache.catalina.realm.LockOutRealm"> + <!-- This Realm uses the UserDatabase configured in the global JNDI + resources under the key "UserDatabase". Any edits + that are performed against this UserDatabase are immediately + available for use by the Realm. --> + <Realm className="org.apache.catalina.realm.UserDatabaseRealm" + resourceName="UserDatabase"/> + </Realm> + + <Host name="localhost" appBase="webapps" unpackWARs="false" autoDeploy="false"> + <Valve className="org.apache.catalina.valves.AccessLogValve" + directory="logs" + prefix="localhost_access_log" suffix=".txt" + pattern="%h %l %u %t "%r" %s %b" + maxDays="5"/> + + </Host> + </Engine> + </Service> +</Server>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomcat-17/setenv.sh Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,14 @@ +#! /bin/sh +# +echo "__________________________________________" + +export CATALINA_OPTS="$CATALINA_OPTS -XX:+UseG1GC" +export CATALINA_OPTS="$CATALINA_OPTS -XX:+UseStringDeduplication " +export CATALINA_OPTS="$CATALINA_OPTS -Djava.security.egd=file:/dev/./urandom" +export CATALINA_OPTS="$CATALINA_OPTS -Duser.language=en" +export CATALINA_OPTS="$CATALINA_OPTS -Duser.region=US" + +echo "Using CATALINA_OPTS $CATALINA_OPTS" +echo "Using JAVA_OPTS $JAVA_OPTS" +echo "_________________________________________" +echo ""
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tomcat-17/tomcat-users.xml Tue Jan 30 10:55:15 2024 -0500 @@ -0,0 +1,11 @@ +<?xml version='1.0' encoding='utf-8'?> +<tomcat-users xmlns="http://tomcat.apache.org/xml" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd" + version="1.0"> + <role rolename="manager-gui"/> + <role rolename="manager-jmx"/> + <role rolename="manager-script"/> + <user username="admin" password="99admin00" roles="manager-gui,manager-jmx"/> + <user username="script" password="99admin00" roles="manager-script"/> +</tomcat-users> \ No newline at end of file