From b96e1093d3e34db839851273085c2d6e5e2ebad7 Mon Sep 17 00:00:00 2001
From: Antoine Rey <antoine.rey@gmail.com>
Date: Mon, 29 Aug 2016 18:47:47 +0200
Subject: [PATCH] Add a Dockefile and configure the  docker-maven-plugin

---
 pom.xml                    | 25 ++++++++++++++++++++++++-
 src/main/docker/Dockerfile |  8 ++++++++
 2 files changed, 32 insertions(+), 1 deletion(-)
 create mode 100644 src/main/docker/Dockerfile

diff --git a/pom.xml b/pom.xml
index 06741b4..880e7be 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
     <modelVersion>4.0.0</modelVersion>
     <groupId>org.springframework.samples</groupId>
     <artifactId>springboot-petclinic</artifactId>
-    <version>1.4.0-SNAPSHOT</version>
+    <version>1.4.0</version>
     <parent>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-parent</artifactId>
@@ -19,6 +19,7 @@
         <java.version>1.7</java.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+        <docker.image.prefix>arey</docker.image.prefix>
 
         <!-- Dates -->
         <jodatime-hibernate.version>1.3</jodatime-hibernate.version>
@@ -313,6 +314,28 @@
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>com.spotify</groupId>
+                <artifactId>docker-maven-plugin</artifactId>
+                <version>0.4.11</version>
+                <configuration>
+                    <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
+                    <dockerDirectory>src/main/docker</dockerDirectory>
+                    <resources>
+                        <resource>
+                            <targetPath>/</targetPath>
+                            <directory>${project.build.directory}</directory>
+                            <include>${project.build.finalName}.war</include>
+                        </resource>
+                    </resources>
+                    <forceTags>true</forceTags>
+                    <imageTags>
+                        <imageTag>${project.version}</imageTag>
+                        <imageTag>latest</imageTag>
+                    </imageTags>
+                    <useConfigFile>true</useConfigFile>
+                </configuration>
+            </plugin>
         </plugins>
     </build>
     <reporting>
diff --git a/src/main/docker/Dockerfile b/src/main/docker/Dockerfile
new file mode 100644
index 0000000..cbbf162
--- /dev/null
+++ b/src/main/docker/Dockerfile
@@ -0,0 +1,8 @@
+FROM openjdk:alpine
+MAINTAINER Antoine Rey <antoine.rey@free.fr>
+# Spring Boot application creates working directories for Tomcat by default
+VOLUME /tmp
+ADD petclinic.war petclinic.war
+RUN sh -c 'touch /petclinic.war'
+# To reduce Tomcat startup time we added a system property pointing to "/dev/urandom" as a source of entropy.
+ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/petclinic.war"]
-- 
GitLab