diff --git a/.dockerignore b/.dockerignore
new file mode 100644
index 0000000..a96e552
--- /dev/null
+++ b/.dockerignore
@@ -0,0 +1,2 @@
+.git/
+target/
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..a0d861d
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,33 @@
+#
+# Dockerfile for inc-validator.
+#
+# Performed as a two-stage build so that we can use Maven to generate the application
+# but not have it (and the things it downloads) clutter up the deployed image.
+#
+
+#
+# Build the .jar file in a build container.
+#
+FROM maven:3.5.3-jdk-8 AS build-jar
+MAINTAINER Ian Young <ian@iay.org.uk>
+
+WORKDIR /user
+COPY pom.xml ./
+COPY swagger swagger
+COPY src src
+
+RUN mvn --batch-mode \
+    -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn \
+    clean package
+
+#
+# Build the deployable image.
+#
+FROM openjdk:8-slim
+MAINTAINER Ian Young <ian@iay.org.uk>
+
+WORKDIR /user
+COPY --from=build-jar /user/target/*.jar .
+
+EXPOSE 8080
+CMD ["java", "-jar", "inc-validator-0.0.1-SNAPSHOT.jar"]
diff --git a/docker-build b/docker-build
new file mode 100755
index 0000000..3b906c0
--- /dev/null
+++ b/docker-build
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+docker build -t iay/inc-validator .