exist-docker
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.exist-db</groupId> <artifactId>exist-docker</artifactId> <version>5.4.1</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <!-- 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>org.exist-db</groupId> <artifactId>exist-parent</artifactId> <version>5.4.1</version> <relativePath>../exist-parent</relativePath> </parent> <artifactId>exist-docker</artifactId> <packaging>pom</packaging> <name>eXist-db Docker Image</name> <description>Minimal Docker Image of eXist-db NoSQL Database Client/Server with FO support</description> <scm> <connection>scm:git:https://github.com/exist-db/exist.git</connection> <developerConnection>scm:git:https://github.com/exist-db/exist.git</developerConnection> <url>scm:git:https://github.com/exist-db/exist.git</url> <tag>eXist-5.4.1</tag> </scm> <properties> <assemble.dir>${project.build.directory}/exist-docker-${project.version}-docker-dir</assemble.dir> <exist.uber.jar.filename>exist.uber.jar</exist.uber.jar.filename> <docker.tag>latest</docker.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> <excludes> <exclude>Dockerfile</exclude> </excludes> <encoding>${project.build.sourceEncoding}</encoding> </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/exist-distribution-${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/${exist.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.ServicesResourceTransformer" /> </transformers> </configuration> </execution> </executions> </plugin> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.38.1</version> <configuration> <verbose>true</verbose> <images> <image> <name>existdb/existdb:%v</name> <alias>exist-ci</alias> <build> <tags> <tag>${docker.tag}</tag> </tags> <dockerFile>${project.build.outputDirectory}/Dockerfile</dockerFile> <contextDir>${assemble.dir}</contextDir> </build> </image> </images> </configuration> <executions> <execution> <id>build image</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> <execution> <id>push image to registry</id> <phase>deploy</phase> <goals> <goal>push</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>