added ACS docker tiles

This commit is contained in:
Brian Long 2021-04-28 10:22:58 -04:00
parent a7d1509c24
commit da7d9e3c5e
19 changed files with 450 additions and 0 deletions

View File

@ -0,0 +1,9 @@
# Eclipse
.project
.classpath
.settings
# Maven
pom.xml.versionsBackup
target

View File

@ -0,0 +1,17 @@
FROM alfresco/alfresco-content-repository-community:${alfresco.platfrom.version}
ARG USERNAME=alfresco
ARG TOMCAT_DIR=/usr/local/tomcat
USER root
COPY catalina.policy /tmp/catalina.policy.ext
COPY tomcat-platform-context.xml ${TOMCAT_DIR}/conf/Catalina/localhost/alfresco.xml
RUN mkdir -p ${TOMCAT_DIR}/modules/platform && \
cat /tmp/catalina.policy.ext >> ${TOMCAT_DIR}/conf/catalina.policy
COPY ${project.build.warFile} ${TOMCAT_DIR}/webapps/alfresco.war
COPY modules/*.jar ${TOMCAT_DIR}/modules/platform/
USER ${USERNAME}

View File

@ -0,0 +1,4 @@
grant codeBase "file:${catalina.base}/modules/-" {
permission java.security.AllPermission;
};

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<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>
<groupId>com.inteligr8.ootbee</groupId>
<artifactId>beedk-acs-platform-webapp-docker-tile</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>tile</packaging>
<name>Order of the Bee Development Kit: ACS Platform Web Application Docker Enablement</name>
<scm>
<url>https://bitbucket.org/inteligr8/ootbee-beedk</url>
</scm>
<organization>
<name>Order of the Bee</name>
<url>https://orderofthebee.net</url>
</organization>
<developers>
<developer>
<name>Brian Long</name>
<email>brian@inteligr8.com</email>
<organization>Inteligr8</organization>
<organizationUrl>https://www.inteligr8.com</organizationUrl>
<url>https://twitter.com/brianmlong</url>
</developer>
</developers>
<build>
<plugins>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>2.20</version>
<extensions>true</extensions>
<configuration>
<filtering>true</filtering>
<tiles>
<tile>com.inteligr8:maven-public-deploy-tile:[1.0.0,2.0.0)</tile>
</tiles>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0 https://bitbucket.org/inteligr8/maven-tiles/raw/xsd/src/main/resources/maven-tiles.xsd">
<profiles>
<profile>
<id>scaffold-acs-platform-webapp-docker</id>
<activation>
<property>
<name>scaffold</name>
</property>
</activation>
<build>
<plugins>
<!-- This plugin downloads the required configurations for all modules -->
<plugin>
<groupId>com.googlecode.maven-download-plugin</groupId>
<artifactId>download-maven-plugin</artifactId>
<version>1.6.1</version>
<executions>
<!-- TODO eventually replace these with the archetype versions -->
<execution>
<id>download-dockerfile</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://bitbucket.org/inteligr8/ootbee-beedk/raw/stable/beedk-acs-platform-webapp-docker-tile/Dockerfile</url>
<outputDirectory>${basedir}/src/main/docker</outputDirectory>
</configuration>
</execution>
<execution>
<id>download-policy</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://bitbucket.org/inteligr8/ootbee-beedk/raw/stable/beedk-acs-platform-webapp-docker-tile/catalina.policy</url>
<outputDirectory>${basedir}/src/main/docker</outputDirectory>
</configuration>
</execution>
<execution>
<id>download-context</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://bitbucket.org/inteligr8/ootbee-beedk/raw/stable/beedk-acs-platform-webapp-docker-tile/tomcat-platform-context.xml</url>
<outputDirectory>${basedir}/src/main/docker</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<tiles>
<!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-docker-tile -->
<tile>@project.groupId@:beedk-acs-webapp-docker-tile:@project.version@</tile>
</tiles>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<Context>
<Resources>
<PreResources base="${catalina.base}/modules/platform" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/lib" readOnly="true" />
</Resources>
</Context>

View File

@ -0,0 +1,9 @@
# Eclipse
.project
.classpath
.settings
# Maven
pom.xml.versionsBackup
target

View File

@ -0,0 +1,17 @@
FROM alfresco/alfresco-share:${alfresco.share.version}
ARG USERNAME=alfresco
ARG TOMCAT_DIR=/usr/local/tomcat
USER root
COPY catalina.policy /tmp/catalina.policy.ext
COPY tomcat-share-context.xml ${TOMCAT_DIR}/conf/Catalina/localhost/share.xml
RUN mkdir -p ${TOMCAT_DIR}/modules/share && \
cat /tmp/catalina.policy.ext >> ${TOMCAT_DIR}/conf/catalina.policy
COPY ${project.build.warFile} ${TOMCAT_DIR}/webapps/share.war
COPY modules/*.jar ${TOMCAT_DIR}/modules/share/
USER ${USERNAME}

View File

@ -0,0 +1,4 @@
grant codeBase "file:${catalina.base}/modules/-" {
permission java.security.AllPermission;
};

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<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>
<groupId>com.inteligr8.ootbee</groupId>
<artifactId>beedk-acs-share-webapp-docker-tile</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>tile</packaging>
<name>Order of the Bee Development Kit: ACS Share Web Application Docker Enablement</name>
<scm>
<url>https://bitbucket.org/inteligr8/ootbee-beedk</url>
</scm>
<organization>
<name>Order of the Bee</name>
<url>https://orderofthebee.net</url>
</organization>
<developers>
<developer>
<name>Brian Long</name>
<email>brian@inteligr8.com</email>
<organization>Inteligr8</organization>
<organizationUrl>https://www.inteligr8.com</organizationUrl>
<url>https://twitter.com/brianmlong</url>
</developer>
</developers>
<build>
<plugins>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>2.20</version>
<extensions>true</extensions>
<configuration>
<filtering>true</filtering>
<tiles>
<tile>com.inteligr8:maven-public-deploy-tile:[1.0.0,2.0.0)</tile>
</tiles>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0 https://bitbucket.org/inteligr8/maven-tiles/raw/xsd/src/main/resources/maven-tiles.xsd">
<profiles>
<profile>
<id>scaffold-acs-share-webapp-docker</id>
<activation>
<property>
<name>scaffold</name>
</property>
</activation>
<build>
<plugins>
<!-- This plugin downloads the required configurations for all modules -->
<plugin>
<groupId>com.googlecode.maven-download-plugin</groupId>
<artifactId>download-maven-plugin</artifactId>
<version>1.6.1</version>
<executions>
<!-- TODO eventually replace these with the archetype versions -->
<execution>
<id>download-dockerfile</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://bitbucket.org/inteligr8/ootbee-beedk/raw/stable/beedk-acs-share-webapp-docker-tile/Dockerfile</url>
<outputDirectory>${basedir}/src/main/docker</outputDirectory>
</configuration>
</execution>
<execution>
<id>download-policy</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://bitbucket.org/inteligr8/ootbee-beedk/raw/stable/beedk-acs-share-webapp-docker-tile/catalina.policy</url>
<outputDirectory>${basedir}/src/main/docker</outputDirectory>
</configuration>
</execution>
<execution>
<id>download-context</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>https://bitbucket.org/inteligr8/ootbee-beedk/raw/stable/beedk-acs-share-webapp-docker-tile/tomcat-share-context.xml</url>
<outputDirectory>${basedir}/src/main/docker</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<tiles>
<!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-acs-webapp-docker-tile -->
<tile>@project.groupId@:beedk-acs-webapp-docker-tile:@project.version@</tile>
</tiles>
</project>

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8" ?>
<Context>
<Resources>
<PreResources base="${catalina.base}/modules/platform" className="org.apache.catalina.webresources.DirResourceSet" webAppMount="/WEB-INF/lib" readOnly="true" />
</Resources>
</Context>

View File

@ -0,0 +1,9 @@
# Eclipse
.project
.classpath
.settings
# Maven
pom.xml.versionsBackup
target

View File

View File

@ -0,0 +1,48 @@
<?xml version="1.0" encoding="UTF-8"?>
<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>
<groupId>com.inteligr8.ootbee</groupId>
<artifactId>beedk-acs-webapp-docker-tile</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>tile</packaging>
<name>Order of the Bee Development Kit: ACS Web Application Docker Enablement</name>
<scm>
<url>https://bitbucket.org/inteligr8/ootbee-beedk</url>
</scm>
<organization>
<name>Order of the Bee</name>
<url>https://orderofthebee.net</url>
</organization>
<developers>
<developer>
<name>Brian Long</name>
<email>brian@inteligr8.com</email>
<organization>Inteligr8</organization>
<organizationUrl>https://www.inteligr8.com</organizationUrl>
<url>https://twitter.com/brianmlong</url>
</developer>
</developers>
<build>
<plugins>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>2.20</version>
<extensions>true</extensions>
<configuration>
<filtering>true</filtering>
<tiles>
<tile>com.inteligr8:maven-public-deploy-tile:[1.0.0,2.0.0)</tile>
</tiles>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://tiles.bluetrainsoftware.com/maven/tiles/1.1.0 https://bitbucket.org/inteligr8/maven-tiles/raw/xsd/src/main/resources/maven-tiles.xsd">
<build>
<plugins>
<!-- This plugin copies the Dockerfile and resources to the base build directory -->
<!-- Dockerfile ADD/COPY commands can only use files inside the build directory -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.2.0</version>
<executions>
<execution>
<id>copy-and-filter-docker-resources</id>
<phase>generate-resources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>${docker.source.directory}</directory>
<filtering>true</filtering>
<targetPath>${project.build.directory}</targetPath>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- This plugin configures the building and pushing of a Docker image -->
<plugin>
<groupId>com.spotify</groupId>
<artifactId>dockerfile-maven-plugin</artifactId>
<version>1.4.13</version>
<configuration>
<contextDirectory>${project.build.directory}</contextDirectory>
<repository>${docker.image.registry}/${docker.image.name}</repository>
<tag>${docker.image.tag}</tag>
<useMavenSettingsForAuth>true</useMavenSettingsForAuth>
</configuration>
<executions>
<execution>
<id>docker-build</id>
<phase>package</phase>
<goals><goal>build</goal></goals>
<configuration>
<repository>${docker.image.name}</repository>
</configuration>
</execution>
<execution>
<id>docker-tag-registry</id>
<phase>install</phase>
<goals><goal>tag</goal></goals>
</execution>
<execution>
<id>docker-push</id>
<phase>deploy</phase>
<goals><goal>push</goal></goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>default-props</id>
<activation>
<property>
<name>!some-prop-that-never-exists</name>
</property>
</activation>
<properties>
<!-- skip deployment of spring boot app -->
<beedk.deploy.dockerImageOnly>true</beedk.deploy.dockerImageOnly>
<maven.deploy.skip>${beedk.deploy.dockerImageOnly}</maven.deploy.skip>
<docker.source.directory>${basedir}/src/main/docker</docker.source.directory>
<docker.image.tag>${project.version}</docker.image.tag>
</properties>
</profile>
</profiles>
</project>

View File

@ -71,6 +71,9 @@
<module>beedk-ate-springboot-test</module>
<module>beedk-ate-springboot-tile</module>
<module>beedk-acs-webapp-docker-tile</module>
<module>beedk-acs-platform-webapp-docker-tile</module>
<module>beedk-acs-share-webapp-docker-tile</module>
<module>beedk-springboot-docker-base-tile</module>
<module>beedk-springboot-docker-tile</module>
<module>beedk-ate-docker-tile</module>