tomcat_administration:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| tomcat_administration:start [2016/11/21 08:03] – marco.staub | tomcat_administration:start [2024/04/11 06:55] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| ===== Tag 1 ===== | ===== Tag 1 ===== | ||
| - | ==== rc.sh ==== | + | ==== 1.2 - tomcat.sh ==== |
| < | < | ||
| - | #!/usr/bin/sh | + | #!/bin/sh |
| - | # rc.sh | + | |
| ### Start Config ### | ### Start Config ### | ||
| - | TOMCAT_VERSION=8.5.8 | + | |
| + | TOMCAT_VERSION=10.1.20 | ||
| INSTANCE_NAME=workshop | INSTANCE_NAME=workshop | ||
| - | INSTANCE_VERSION=1.0 | ||
| ### End Config #### | ### End Config #### | ||
| CATALINA_HOME=/ | CATALINA_HOME=/ | ||
| - | CATALINA_BASE=/ | + | CATALINA_BASE=/ |
| export CATALINA_HOME | export CATALINA_HOME | ||
| Zeile 22: | Zeile 21: | ||
| case " | case " | ||
| - | start) | + | start) |
| - | | + | $CATALINA_HOME/ |
| - | ;; | + | ;; |
| - | | + | stop) |
| - | | + | $CATALINA_HOME/ |
| - | ;; | + | ;; |
| - | | + | *) |
| - | | + | echo " |
| - | | + | exit 1 |
| - | ;; | + | ;; |
| esac | esac | ||
| </ | </ | ||
| - | ==== Erweiterung setenv.sh ==== | + | ==== 1.3 - Erweiterung setenv.sh ==== |
| < | < | ||
| Zeile 42: | Zeile 41: | ||
| CATALINA_OUT=" | CATALINA_OUT=" | ||
| CATALINA_OPTS=" | CATALINA_OPTS=" | ||
| - | export CATALINA_TMPDIR; | ||
| - | export CATALINA_PID; | ||
| </ | </ | ||
| + | |||
| + | ==== 1.4 - OOM ==== | ||
| + | < | ||
| + | JAVA_OOM=" | ||
| + | CATALINA_OPTS=" | ||
| + | </ | ||
| + | |||
| + | ==== 1.4 - action.bash ==== | ||
| + | |||
| + | < | ||
| + | #!/bin/bash | ||
| + | dumps=`ls -1rt / | ||
| + | printf " | ||
| + | # printf " | ||
| + | </ | ||
| + | |||
| + | ==== 1.8 - Valve und Filter ==== | ||
| + | |||
| + | < | ||
| + | < | ||
| + | <Valve className=" | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ===== Tag 2 ===== | ||
| + | |||
| + | ==== 2.4 - SSL Connector ==== | ||
| + | |||
| + | < | ||
| + | < | ||
| + | | ||
| + | < | ||
| + | ciphers=" | ||
| + | honorCipherOrder=" | ||
| + | < | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== 2.5 - Anpassungen logging.properties ==== | ||
| + | |||
| + | < | ||
| + | handlers = 1catalina.org.apache.juli.AsyncFileHandler, | ||
| + | 2localhost.org.apache.juli.AsyncFileHandler, | ||
| + | 3manager.org.apache.juli.AsyncFileHandler, | ||
| + | org.apache.juli.AsyncFileHandler, | ||
| + | 5workshop1.org.apache.juli.AsyncFileHandler, | ||
| + | 6workshop2.org.apache.juli.AsyncFileHandler | ||
| + | </ | ||
| + | < | ||
| + | 5workshop1.org.apache.juli.AsyncFileHandler.level = FINE | ||
| + | 5workshop1.org.apache.juli.AsyncFileHandler.directory = ${catalina.var}/ | ||
| + | 5workshop1.org.apache.juli.AsyncFileHandler.prefix = workshop_log1. | ||
| + | 5workshop1.org.apache.juli.AsyncFileHandler.maxDays = 90 | ||
| + | 5workshop1.org.apache.juli.AsyncFileHandler.encoding = UTF-8 | ||
| + | |||
| + | 6workshop2.org.apache.juli.AsyncFileHandler.level = FINE | ||
| + | 6workshop2.org.apache.juli.AsyncFileHandler.directory = ${catalina.var}/ | ||
| + | 6workshop2.org.apache.juli.AsyncFileHandler.prefix = workshop_log2. | ||
| + | 6workshop2.org.apache.juli.AsyncFileHandler.maxDays = 90 | ||
| + | 6workshop2.org.apache.juli.AsyncFileHandler.encoding = UTF-8 | ||
| + | </ | ||
| + | < | ||
| + | ws_log.handlers = 5workshop1.org.apache.juli.AsyncFileHandler | ||
| + | de.kippdata.workshop.handlers = 6workshop2.org.apache.juli.AsyncFileHandler | ||
| + | </ | ||
| + | ==== 2.6 - log4j.xml ==== | ||
| + | < | ||
| + | <?xml version=" | ||
| + | <!-- You can add the attribute monitorInterval (seconds) | ||
| + | to the Configuration element for hot config reloading, | ||
| + | for example: < | ||
| + | < | ||
| + | < | ||
| + | < | ||
| + | | ||
| + | | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | <!-- Daily Rotation, schedule is cron style | ||
| + | with columns seconds, minutes, hours, day-of-month, | ||
| + | | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | < | ||
| + | <Root level=" | ||
| + | < | ||
| + | </ | ||
| + | <!-- Example for changing a log level | ||
| + | <Logger name=" | ||
| + | level=" | ||
| + | < | ||
| + | </ | ||
| + | <Logger name=" | ||
| + | level=" | ||
| + | < | ||
| + | </ | ||
| + | <Logger name=" | ||
| + | level=" | ||
| + | < | ||
| + | </ | ||
| + | --> | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== 2.7 - JMX Remote ==== | ||
| + | < | ||
| + | JMX_OPTS_NOSSL_NOAUTH=" | ||
| + | -Dcom.sun.management.jmxremote=true \ | ||
| + | -Dcom.sun.management.jmxremote.port=1090 \ | ||
| + | -Dcom.sun.management.jmxremote.ssl=false \ | ||
| + | -Dcom.sun.management.jmxremote.authenticate=false \ | ||
| + | " | ||
| + | |||
| + | JMX_OPTS_SSL_NOAUTH=" | ||
| + | -Dcom.sun.management.jmxremote=true \ | ||
| + | -Dcom.sun.management.jmxremote.port=1090 \ | ||
| + | -Dcom.sun.management.jmxremote.ssl=true \ | ||
| + | -Dcom.sun.management.jmxremote.authenticate=false \ | ||
| + | -Djavax.net.ssl.keyStorePassword=workshop \ | ||
| + | -Djavax.net.ssl.keyStore=${CATALINA_BASE}/ | ||
| + | " | ||
| + | |||
| + | JMX_OPTS_SSL_AUTH=" | ||
| + | -Dcom.sun.management.jmxremote=true \ | ||
| + | -Dcom.sun.management.jmxremote.port=1090 \ | ||
| + | -Dcom.sun.management.jmxremote.ssl=true \ | ||
| + | -Dcom.sun.management.jmxremote.authenticate=true \ | ||
| + | -Dcom.sun.management.jmxremote.access.file=${CATALINA_BASE}/ | ||
| + | -Dcom.sun.management.jmxremote.password.file=${CATALINA_BASE}/ | ||
| + | -Djavax.net.ssl.keyStorePassword=workshop \ | ||
| + | -Djavax.net.ssl.keyStore=${CATALINA_BASE}/ | ||
| + | " | ||
| + | |||
| + | CATALINA_OPTS=" | ||
| + | </ | ||
| + | |||
| + | ===== Tag 3 ===== | ||
| + | |||
| + | ==== 3.7 - Ressources ==== | ||
| + | |||
| + | < | ||
| + | <Context docBase="/ | ||
| + | < | ||
| + | < | ||
| + | | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== 3.8 - LDAP Realm ==== | ||
| + | |||
| + | < | ||
| + | < | ||
| + | connectionName=" | ||
| + | connectionPassword=" | ||
| + | connectionURL=" | ||
| + | userBase=" | ||
| + | userSubtree=" | ||
| + | userSearch=" | ||
| + | roleBase=" | ||
| + | roleSubtree=" | ||
| + | roleName=" | ||
| + | roleSearch=" | ||
| + | /> | ||
| + | </ | ||
| + | |||
| + | ===== Tag 4 ===== | ||
| + | |||
| + | |||
| + | ===== Tag 5 ===== | ||
| + | |||
| + | ==== 5.1 - docker ==== | ||
| + | |||
| + | < | ||
| + | FROM alpine:3.15 | ||
| + | |||
| + | #### OpenJDK 17 | ||
| + | RUN apk update | ||
| + | RUN apk add openjdk17-jre-headless | ||
| + | ENV JAVA_HOME / | ||
| + | |||
| + | #### tcnative | ||
| + | #ENV TCNATIVE 1.2.33 | ||
| + | #RUN apk add openjdk17-jdk apr-dev openssl-dev gcc make musl-dev | ||
| + | #RUN wget -O / | ||
| + | # cd /tmp; \ | ||
| + | # tar -zxf tomcat-native-${TCNATIVE}-src.tar.gz; | ||
| + | # cd tomcat-native-${TCNATIVE}-src/ | ||
| + | # ./configure --prefix=/ | ||
| + | # make; \ | ||
| + | # make install; \ | ||
| + | # cd /tmp; \ | ||
| + | # rm -rf / | ||
| + | |||
| + | #### tomcat | ||
| + | ENV TOMCATVERSION 10.0.20 | ||
| + | ENV INSTANCENAME workshop | ||
| + | ENV TOMCATDIR /opt/tomcat | ||
| + | ENV WARFILE workshop.war | ||
| + | ENV APPVERSION 3.1.0 | ||
| + | ENV CATALINA_HOME ${TOMCATDIR}/ | ||
| + | ENV CATALINA_BASE ${TOMCATDIR}/ | ||
| + | ENV CATALINA_VAR / | ||
| + | ENV PATH $CATALINA_HOME/ | ||
| + | ENV TCUSER tcrun | ||
| + | ENV TCGROUP tcgroup | ||
| + | |||
| + | # create CATALINA_HOME | ||
| + | RUN mkdir -p " | ||
| + | cd ${TOMCATDIR}/ | ||
| + | wget -O / | ||
| + | tar -zxf / | ||
| + | rm / | ||
| + | |||
| + | # create CATALINA_BASE | ||
| + | COPY ${INSTANCENAME}.tar / | ||
| + | RUN mkdir -p ${TOMCATDIR}/ | ||
| + | cd ${TOMCATDIR}/ | ||
| + | tar -xf / | ||
| + | rm / | ||
| + | |||
| + | # create CATALINA_VAR | ||
| + | RUN mkdir -p / | ||
| + | cd / | ||
| + | mkdir logs temp webapps work | ||
| + | |||
| + | # create webappdir | ||
| + | RUN mkdir -p / | ||
| + | COPY $WARFILE / | ||
| + | |||
| + | # create runtime user and change rights | ||
| + | RUN addgroup $TCGROUP; \ | ||
| + | adduser -h /opt/tomcat -H -G $TCGROUP -s /bin/sh -D $TCUSER; \ | ||
| + | chown -R $TCUSER: | ||
| + | chown -R $TCUSER: | ||
| + | chown -R $TCUSER: | ||
| + | |||
| + | WORKDIR $CATALINA_BASE | ||
| + | EXPOSE 8080 8443 | ||
| + | |||
| + | USER $TCUSER | ||
| + | CMD [" | ||
| + | </ | ||
| + | |||
| + | ==== 5.3 - einfacher Proxy ==== | ||
| + | < | ||
| + | < | ||
| + | ProxyPass /workshop http:// | ||
| + | ProxyPassReverse /workshop http:// | ||
| + | ProxyPassReverse /workshop http:// | ||
| + | ProxyPreserveHost On | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== 5.6 - Monitoring ==== | ||
| + | |||
| + | < | ||
| + | | ||
| + | < | ||
| + | SetHandler balancer-manager | ||
| + | AuthType basic | ||
| + | AuthName "Proxy Balancer" | ||
| + | AuthBasicProvider file | ||
| + | AuthUserFile htpasswd.intern | ||
| + | Require user proxyadmin | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | LogFormat "%h %l %u %t \" | ||
| + | CustomLog " | ||
| + | </ | ||
| + | |||
tomcat_administration/start.1479715430.txt.gz · Zuletzt geändert: 2016/11/21 08:03 von marco.staub
