Fork me on GitHub

mn:dockerfile

Full name:

io.micronaut.maven:micronaut-maven-plugin:4.7.2-SNAPSHOT:dockerfile

Description:

Generates a Dockerfile depending on the packaging and micronaut.runtime properties.

mvn mn:dockerfile -Dpackaging=docker-native -Dmicronaut.runtime=lambda

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: compile+runtime.
  • The goal is not marked as thread-safe and thus does not support parallel builds.
  • Since version: 1.1.
  • Invokes the execution of the following lifecycle phase prior to executing itself: process-classes.

Required Parameters

Name Type Since Description
<mainClass> String - The main class of the application, as defined in the Exec Maven Plugin.
Default: ${exec.mainClass}

Optional Parameters

Name Type Since Description
<appArguments> List<String> - List of additional arguments that will be passed to the application.
User Property: mn.appArgs
<baseImageRun> String 1.2 The Docker image used to run the native image.
Default: cgr.dev/chainguard/wolfi-base:latest
User Property: micronaut.native-image.base-image-run
<micronautRuntime> String - The target runtime of the application.
Default: NONE
User Property: micronaut.runtime
<nativeImageBuildArgs> List<String> - Additional arguments that will be passed to the native-image executable. Note that this will only be used when using a packaging of type docker-native. For native-image packaging you should use the Native Image Maven Plugin configuration options.
User Property: micronaut.native-image.args
<networkMode> String 4.0.0 Networking mode for the RUN instructions during build.
User Property: docker.networkMode
<oracleLinuxVersion> String - The version of Oracle Linux to use as a native-compile base when building a native image inside a Docker container.
Default: ol9
User Property: micronaut.native-image.ol.version
<staticNativeImage> Boolean - Whether to produce a static native image when using docker-native packaging.
Default: false
User Property: micronaut.native-image.static

Parameter Details

<appArguments>

List of additional arguments that will be passed to the application.
  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: mn.appArgs

<baseImageRun>

The Docker image used to run the native image.
  • Type: java.lang.String
  • Since: 1.2
  • Required: No
  • User Property: micronaut.native-image.base-image-run
  • Default: cgr.dev/chainguard/wolfi-base:latest

<mainClass>

The main class of the application, as defined in the Exec Maven Plugin.
  • Type: java.lang.String
  • Required: Yes
  • Default: ${exec.mainClass}

<micronautRuntime>

The target runtime of the application.
  • Type: java.lang.String
  • Required: No
  • User Property: micronaut.runtime
  • Default: NONE

<nativeImageBuildArgs>

Additional arguments that will be passed to the native-image executable. Note that this will only be used when using a packaging of type docker-native. For native-image packaging you should use the Native Image Maven Plugin configuration options.
  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: micronaut.native-image.args

<networkMode>

Networking mode for the RUN instructions during build.
  • Type: java.lang.String
  • Since: 4.0.0
  • Required: No
  • User Property: docker.networkMode

<oracleLinuxVersion>

The version of Oracle Linux to use as a native-compile base when building a native image inside a Docker container.
  • Type: java.lang.String
  • Required: No
  • User Property: micronaut.native-image.ol.version
  • Default: ol9

<staticNativeImage>

Whether to produce a static native image when using docker-native packaging.
  • Type: java.lang.Boolean
  • Required: No
  • User Property: micronaut.native-image.static
  • Default: false