Class DockerCracMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="docker-crac", requiresDependencyResolution=COMPILE_PLUS_RUNTIME) public class DockerCracMojo extends AbstractDockerMojo

Implementation of the docker-crac packaging.

WARNING: this goal is not intended to be executed directly. Instead, specify the packaging type using the packaging property, eg:

mvn package -Dpackaging=docker-crac

This is a two stage process. First a docker image is built that runs the application under a CRaC enabled JDK. Then the application is warmed up via a shell script. And then a checkpoint is taken via a signal using jcmd.

The second stage takes this checkpoint, and creates the final image containing it plus a run script which passes the correct flags to the CRaC enabled JDK.

Since:
3.5.0
Author:
Tim Yates