Compare commits

..
Author SHA1 Message Date
brian.long baff429fe3 Merge branch 'develop' into develop-tomcat10 2026-05-21 20:32:55 -04:00
brian.long 11dcc50a0c refactored 2026-05-21 20:32:13 -04:00
brian.long 6b88cbe3e8 generic jbr 2026-05-21 09:20:09 -04:00
brian.long 086a17cf98 Merge branch 'develop' into develop-tomcat10 2026-05-21 09:04:57 -04:00
brian.long b7ff68327a additional tagging 2026-05-21 09:04:46 -04:00
brian.long 35c38baa30 tomcat v10.1.55 2026-05-20 16:41:44 -04:00
brian.long 849cfde955 tabs, not spaces 2026-05-20 16:40:08 -04:00
brian.long 487c6814f2 fix kubernetes-maven-plugin upgrade 2026-03-24 10:56:00 -04:00
brian.long 958f42d84c flipped versioning scheme 2026-03-24 10:19:26 -04:00
brian.long 6744e46e28 upgrade plugins 2026-03-24 10:17:38 -04:00
brian.long 2db4660274 tomcat v10.1.52 2026-03-24 09:34:55 -04:00
brian.long be858e0eba upgrade jdk/tomcat 2025-05-27 17:06:52 -04:00
brian.long 9cf3390724 Merge branch 'develop-tomcat9' into develop 2025-01-31 16:46:16 -05:00
brian.long 1a24064c1b support old tomcat version downloads 2025-01-31 16:45:46 -05:00
brian.long 8fcceaa19d refactored; downgrade jkube to v1.16.2 2025-01-31 16:44:05 -05:00
brian.long 36bbc9f02a v10-2.2 pom 2025-01-31 16:05:24 -05:00
brian.long ec3dab1f9f Merge commit '342213e47d83a2e98ce01ce2a2dc3be0d7a94063' into develop 2025-01-31 16:04:36 -05:00
brian.long 7872db4ff8 v9-2.2 pom 2025-01-31 16:03:32 -05:00
brian.long 342213e47d updated tomcat; jdk-hotswap; mvn plugins 2025-01-31 16:02:45 -05:00
brian.long 07ff4f5635 upgraded tomcat to v10 2024-08-07 11:29:49 -04:00
brian.long 063c1123b5 upgraded various versions 2024-08-07 11:27:14 -04:00
6 changed files with 151 additions and 119 deletions
-5
View File
@@ -1,5 +0,0 @@
#!/bin/sh
. /usr/local/bin/jdk-hotswap-setenv.sh
. /usr/local/bin/${namespace.prefix}-setenv.sh
exec "$@"
+148 -100
View File
@@ -1,109 +1,157 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>com.inteligr8</groupId> <groupId>com.inteligr8</groupId>
<artifactId>tomcat-rad</artifactId> <artifactId>tomcat-rad</artifactId>
<version>9-2.1</version> <version>${base.version}-tomcat-${tomcat.version}</version>
<name>Apache Tomcat for Rapid Application Development</name> <name>Apache Tomcat for Rapid Application Development</name>
<packaging>pom</packaging> <packaging>pom</packaging>
<properties> <properties>
<!-- The release version of the Java Hotswap Docker image --> <base.version>2.3</base.version>
<!-- See: https://bitbucket.org/inteligr8/jdk-hotswap-docker -->
<jdk-hotswap.version>1.4.1-jbr-17.0.10</jdk-hotswap.version> <!-- The release version of the Java Hotswap Docker image -->
<!-- See: https://git.inteligr8.com/inteligr8/jdk-hotswap-image -->
<!-- See: https://repos.inteligr8.com/nexus/service/rest/repository/browse/inteligr8-docker-public/v2/inteligr8/jdk-hotswap/tags/ -->
<jdk-hotswap.version>2.0.3-jbr17</jdk-hotswap.version>
<namespace.prefix>tomcat-rad</namespace.prefix> <!-- The version of Apache Tomcat to serve as the basis of this Docker image -->
<!-- See: https://tomcat.apache.org/download-10.cgi -->
<tomcat.version>10.1.55</tomcat.version>
<tomcat.mirror.baseUrl>https://archive.apache.org/dist/tomcat</tomcat.mirror.baseUrl>
<!-- The version of Apache Tomcat to serve as the basis of this Docker image --> <!-- The Docker image meta-data for pushing the build -->
<!-- See: https://tomcat.apache.org/download-90.cgi --> <image.name>inteligr8/${project.artifactId}</image.name>
<tomcat.version>9.0.86</tomcat.version> <image.tag>${project.version}</image.tag>
<tomcat.majorVersion>9</tomcat.majorVersion> <image.registry>docker.inteligr8.com</image.registry>
<tomcat.mirror.baseUrl>https://apache.osuosl.org/tomcat</tomcat.mirror.baseUrl>
<!-- The Docker image meta-data for pushing the build --> <!-- using version properties so they can be overridden by child projects or Maven executions -->
<image.name>inteligr8/${project.artifactId}</image.name> <maven-resources-plugin.version>3.5.0</maven-resources-plugin.version>
<image.tag>${project.version}</image.tag> <maven-deploy-plugin.version>3.1.4</maven-deploy-plugin.version>
<image.registry>docker.inteligr8.com</image.registry> <kubernetes-maven-plugin.version>1.19.0</kubernetes-maven-plugin.version>
</properties> <regex-maven-plugin.version>1.0.7</regex-maven-plugin.version>
</properties>
<build> <build>
<resources> <resources>
<resource> <resource>
<directory>.</directory> <directory>src/main/containerd</directory>
<includes> <filtering>true</filtering>
<include>*.sh</include> <targetPath>${project.build.directory}/resources</targetPath>
<include>*.properties</include> </resource>
<include>*.xml</include> </resources>
</includes> <pluginManagement>
<filtering>true</filtering> <plugins>
<targetPath>${project.build.directory}</targetPath> <plugin>
</resource> <artifactId>maven-resources-plugin</artifactId>
</resources> <version>${maven-resources-plugin.version}</version>
<plugins> </plugin>
<plugin> <plugin>
<artifactId>maven-resources-plugin</artifactId> <artifactId>maven-deploy-plugin</artifactId>
<version>3.3.1</version> <version>${maven-deploy-plugin.version}</version>
<executions> </plugin>
<execution> <plugin>
<id>copy-resources</id> <groupId>org.eclipse.jkube</groupId>
<phase>process-resources</phase> <artifactId>kubernetes-maven-plugin</artifactId>
<goals><goal>resources</goal></goals> <version>${kubernetes-maven-plugin.version}</version>
<configuration> </plugin>
<encoding>utf-8</encoding> <plugin>
<propertiesEncoding>utf-8</propertiesEncoding> <groupId>com.inteligr8</groupId>
</configuration> <artifactId>regex-maven-plugin</artifactId>
</execution> <version>${regex-maven-plugin.version}</version>
</executions> </plugin>
</plugin> </plugins>
<!-- This plugin build and pushes the Docker image --> </pluginManagement>
<plugin> <plugins>
<groupId>org.eclipse.jkube</groupId> <plugin>
<artifactId>kubernetes-maven-plugin</artifactId> <groupId>com.inteligr8</groupId>
<version>1.14.0</version> <artifactId>regex-maven-plugin</artifactId>
<configuration> <executions>
<images> <execution>
<image> <id>determine-tomcat-major-version</id>
<name>${image.name}:${image.tag}</name> <phase>validate</phase>
<registry>${image.registry}</registry> <goals>
</image> <goal>replace-property</goal>
</images> </goals>
<contextDir>${basedir}</contextDir> <configuration>
<buildStrategy>docker</buildStrategy> <property>tomcat.version</property>
<verbose>true</verbose> <newProperty>tomcat.majorVersion</newProperty>
</configuration> <regexes>
<executions> <regex>
<!-- This execution builds the Docker image --> <pattern>([^.]+).*</pattern>
<execution> <replacement>$1</replacement>
<id>docker-build</id> </regex>
<phase>package</phase> </regexes>
<goals><goal>build</goal></goals> </configuration>
</execution> </execution>
<!-- This execution pushes the built Docker image to the configured Docker Registry --> </executions>
<execution> </plugin>
<id>docker-push</id> <plugin>
<phase>deploy</phase> <artifactId>maven-resources-plugin</artifactId>
<goals><goal>push</goal></goals> <executions>
</execution> <execution>
</executions> <id>copy-resources</id>
</plugin> <phase>process-resources</phase>
<!-- This plugin prevents the project from deploying to the Maven Repository, as it is pointless --> <goals><goal>resources</goal></goals>
<plugin> <configuration>
<artifactId>maven-deploy-plugin</artifactId> <encoding>utf-8</encoding>
<version>3.1.1</version> <propertiesEncoding>utf-8</propertiesEncoding>
<configuration> </configuration>
<skip>true</skip> </execution>
</configuration> </executions>
</plugin> </plugin>
</plugins> <!-- This plugin build and pushes the Docker image -->
</build> <plugin>
<groupId>org.eclipse.jkube</groupId>
<artifactId>kubernetes-maven-plugin</artifactId>
<configuration>
<images>
<image>
<name>${image.name}:${image.tag}</name>
<registry>${image.registry}</registry>
<build>
<contextDir>${project.build.directory}/resources</contextDir>
<dockerFile>Containerfile</dockerFile>
<tags>
<tag>${base.version}-tomcat${tomcat.majorVersion}</tag>
</tags>
</build>
</image>
</images>
<verbose>true</verbose>
</configuration>
<executions>
<!-- This execution builds the Docker image -->
<execution>
<id>docker-build</id>
<phase>package</phase>
<goals><goal>build</goal></goals>
</execution>
<!-- This execution pushes the built Docker image to the configured Docker Registry -->
<execution>
<id>docker-push</id>
<phase>deploy</phase>
<goals><goal>push</goal></goals>
</execution>
</executions>
</plugin>
<!-- This plugin prevents the project from deploying to the Maven Repository, as it is pointless -->
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
<profiles> <profiles>
<profile> <profile>
<id>no-docker</id> <id>no-docker</id>
<properties> <properties>
<fabric8.build.jib>true</fabric8.build.jib> <jkube.build.strategy>jib</jkube.build.strategy>
</properties> </properties>
</profile> </profile>
</profiles> </profiles>
</project> </project>
@@ -28,26 +28,15 @@ RUN cd /var/lib/tomcat/dev && \
mkdir web web-extra1 web-extra2 web-extra3 web-extra4 web-extra5 web-extra6 web-extra7 mkdir web web-extra1 web-extra2 web-extra3 web-extra4 web-extra5 web-extra6 web-extra7
# Add our Docker container initialization script # Add our Docker container initialization script
ADD maven/target/setenv.sh /usr/local/bin/${namespace.prefix}-setenv.sh ADD --chmod=755 maven/setenv.sh ${CONTAINERD_ENTRYPOINT_PATH}/40-setenv-${artifactId}.sh
COPY maven/target/docker-entrypoint.sh /usr/local/bin
RUN chmod 755 /usr/local/bin/docker-entrypoint.sh
# Add our Apache Tomcat configuration # Add our Apache Tomcat configuration
# This gives us dynamic injection points into the running webapps # This gives us dynamic injection points into the running webapps
COPY maven/target/tomcat-context.xml /var/lib/tomcat/conf/context.xml ADD --chmod=644 maven/tomcat-context.xml /var/lib/tomcat/conf/context.xml
ADD maven/target/hotswap-agent.properties /var/lib/tomcat/lib ADD --chmod=644 maven/hotswap-agent.properties /var/lib/tomcat/lib
# Listening for HTTP (not HTTPS) traffic # Listening for HTTP (not HTTPS) traffic
EXPOSE 8080 EXPOSE 8080
# Listening for Java debugger traffic
EXPOSE 8000
# Running as ROOT user for now
#USER tomcat
# Execute the Docker container initialization script
ENTRYPOINT [ "/usr/local/bin/docker-entrypoint.sh" ]
# Start the Apache Tomcat web container using the Catalina script # Start the Apache Tomcat web container using the Catalina script
CMD [ "/usr/local/share/tomcat/bin/catalina.sh", "run" ] CMD [ "/usr/local/share/tomcat/bin/catalina.sh", "run" ]