Merge pull request #15 from aasaru/multi-stage-docker-build
FINCN-170 create multi-stage Docker build
diff --git a/.dockerignore b/.dockerignore
index 8d88495..a3b6dc5 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -1,17 +1,7 @@
-api/
-component-test/
-gradle/
-gradlew.bat
LICENSE
README.md
-settings.gradle
-build.gradle
docs/
-gradlew
HEADER
NOTICE.txt
-service/
.git/
-.gradle/
.gitignore
-shared.gradle
\ No newline at end of file
diff --git a/Dockerfile b/Dockerfile
index 0d6bfce..0aad9f7 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -16,7 +16,14 @@
# specific language governing permissions and limitations
# under the License.
#
-FROM openjdk:8-jdk-alpine
+FROM openjdk:8-jdk-alpine AS builder
+RUN mkdir builddir
+COPY . builddir
+WORKDIR builddir
+RUN ./gradlew publishToMavenLocal
+
+
+FROM openjdk:8-jdk-alpine AS runner
ARG accounting_port=2025
@@ -25,6 +32,6 @@
server.port=$accounting_port
WORKDIR /tmp
-COPY accounting-service-boot-0.1.0-BUILD-SNAPSHOT.jar .
+COPY --from=builder /builddir/service/build/libs/service-0.1.0-BUILD-SNAPSHOT-boot.jar ./accounting-service-boot.jar
-CMD ["java", "-jar", "accounting-service-boot-0.1.0-BUILD-SNAPSHOT.jar"]
+CMD ["java", "-jar", "accounting-service-boot.jar"]