Deployment
Each example application in the original MuShop features a hand-crafted Dockerfile that the developer has to write and maintain including ensuring all images used in the Dockerfile are kept up-to-date to avoid security vulnerabilities.
None of the Micronaut applications feature a Dockerfile which is provided automatically and maintained by the framework across releases, making deploying an image a simple matter of executing:
./gradlew dockerPush
for Gradle, or alternatively for Maven:
./mvnw deploy -Dpackaging=docker
Deploying a native version of the application with GraalVM is equally simple:
./gradlew dockerPushNative
for Gradle, or alternatively for Maven:
./mvnw deploy -Dpackaging=docker-native