exist-docker
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>xyz.elemental.fork.org.exist-db</groupId> <artifactId>exist-docker</artifactId> <version>7.1.0</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <!-- Elemental Copyright (C) 2024, Evolved Binary Ltd admin@evolvedbinary.com https://www.evolvedbinary.com | https://www.elemental.xyz This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; version 2.1. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA NOTE: Parts of this file contain code from 'The eXist-db Authors'. The original license header is included below. ===================================================================== eXist-db Open Source Native XML Database Copyright (C) 2001 The eXist-db Authors info@exist-db.org http://www.exist-db.org This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA --> <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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>xyz.elemental.fork.org.exist-db</groupId> <artifactId>exist-parent</artifactId> <version>7.1.0</version> <relativePath>../exist-parent</relativePath> </parent> <artifactId>exist-docker</artifactId> <packaging>pom</packaging> <name>Elemental Docker Image</name> <description>Minimal Docker Image of Elemental NoSQL Database Client/Server with FO support</description> <scm> <connection>scm:git:https://github.com/evolvedbinary/elemental.git</connection> <developerConnection>scm:git:https://github.com/evolvedbinary/elemental.git</developerConnection> <url>scm:git:https://github.com/evolvedbinary/elemental.git</url> <tag>elemental-7.1.0</tag> </scm> <properties> <assemble.dir>${project.build.directory}/exist-docker-${project.version}-docker-dir</assemble.dir> <elemental.uber.jar.filename>elemental.uber.jar</elemental.uber.jar.filename> <docker.tag>latest</docker.tag> <docker.debug.tag>debug</docker.debug.tag> </properties> <dependencies> <dependency> <groupId>${project.groupId}</groupId> <artifactId>exist-distribution</artifactId> <version>${project.version}</version> <type>pom</type> </dependency> </dependencies> <build> <resources> <resource> <directory>src/main/resources-filtered</directory> <filtering>true</filtering> </resource> </resources> <plugins> <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId> <configuration> <licenseSets> <licenseSet> <!-- Elemental License - (LGPL 2.1 only) --> <header>${project.parent.relativePath}/../elemental-parent/elemental-LGPL-21-ONLY-license.template.txt</header> <excludes> <exclude>pom.xml</exclude> <exclude>src/assembly/**</exclude> <exclude>src/main/xslt/**</exclude> <exclude>src/test/**</exclude> <exclude>**.md</exclude> </excludes> </licenseSet> <licenseSet> <!-- Combined: Elemental License (LGPL 2.1 only) + eXist-db License (LGPL 2.1 or later) --> <multi> <header>${project.parent.relativePath}/../elemental-parent/elemental-LGPL-21-ONLY-license.template.txt</header> <separator><![CDATA[NOTE: Parts of this file contain code from 'The eXist-db Authors'. The original license header is included below. ===================================================================== ]]></separator> <header>${project.parent.relativePath}/../exist-parent/existdb-LGPL-21-license.template.txt</header> </multi> <includes> <include>pom.xml</include> </includes> </licenseSet> <licenseSet> <!-- eXist-db License (LGPL 2.1 or later) --> <header>${project.parent.relativePath}/../exist-parent/existdb-LGPL-21-license.template.txt</header> <excludes> <exclude>pom.xml</exclude> <exclude>src/main/resources-filtered/**</exclude> </excludes> </licenseSet> </licenseSets> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <executions> <execution> <phase>process-resources</phase> <goals> <goal>resources</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <executions> <execution> <id>analyze</id> <goals> <goal>analyze-only</goal> </goals> <configuration> <failOnWarning>true</failOnWarning> <ignoredUnusedDeclaredDependencies> <ignoredUnusedDeclaredDependency>${project.groupId}:exist-distribution:pom:${project.version}</ignoredUnusedDeclaredDependency> <!-- needed at runtime to support lucene query syntax --> </ignoredUnusedDeclaredDependencies> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <id>assemble-archives</id> <phase>package</phase> <goals> <goal>single</goal> </goals> <configuration> <archiveBaseDirectory>${project.basedir}/../exist-distribution/target/elemental-${project.version}-dir</archiveBaseDirectory> <attach>false</attach> <descriptors> <descriptor>src/assembly/dist-assembly-docker.xml</descriptor> </descriptors> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>xml-maven-plugin</artifactId> <executions> <execution> <id>adjust-log4j-for-docker</id> <phase>package</phase> <goals> <goal>transform</goal> </goals> <configuration> <transformationSets> <transformationSet> <dir>${assemble.dir}/etc</dir> <includes> <include>log4j2.xml</include> </includes> <stylesheet>src/main/xslt/log4j2-docker.xslt</stylesheet> <outputDir>${assemble.dir}/etc</outputDir> </transformationSet> </transformationSets> </configuration> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <outputFile>${assemble.dir}/lib/${elemental.uber.jar.filename}</outputFile> <minimizeJar>true</minimizeJar> <filters> <filter> <artifact>*:*</artifact> <excludes> <exclude>META-INF/*.SF</exclude> <exclude>META-INF/*.DSA</exclude> <exclude>META-INF/*.RSA</exclude> </excludes> </filter> </filters> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer" /> <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer"> <addHeader>false</addHeader> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/mailcap</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer"> <resource>META-INF/mailcap.default</resource> </transformer> <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" /> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <manifestEntries> <Multi-Release>true</Multi-Release> </manifestEntries> </transformer> </transformers> </configuration> </execution> </executions> </plugin> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.46.0</version> <configuration> <verbose>true</verbose> <images> <image> <name>evolvedbinary/elemental:%v</name> <alias>elemental</alias> <registry>docker.io</registry> <build> <tags> <tag>${docker.tag}</tag> </tags> <dockerFile>${project.build.outputDirectory}/Dockerfile</dockerFile> <contextDir>${assemble.dir}</contextDir> <buildx> <platforms> <platform>linux/amd64</platform> <platform>linux/arm64</platform> <!-- <platform>linux/ppc64le</platform>--> </platforms> </buildx> </build> </image> <image> <name>evolvedbinary/elemental:%v-DEBUG</name> <alias>elemental-debug</alias> <registry>docker.io</registry> <build> <tags> <tag>${docker.debug.tag}</tag> </tags> <dockerFile>${project.build.outputDirectory}/Dockerfile-DEBUG</dockerFile> <contextDir>${assemble.dir}</contextDir> <buildx> <platforms> <platform>linux/amd64</platform> <platform>linux/arm64</platform> <!-- <platform>linux/ppc64le</platform>--> </platforms> </buildx> </build> </image> </images> </configuration> <executions> <execution> <id>build-image</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> <execution> <id>push-image</id> <phase>deploy</phase> <goals> <goal>push</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>