Mit dem io.fabric8 Plugin kann ein Maven Projekt mit Java in Docker laufen. Dazu z.B. das Plugin wie folgt in der pom.xml eintragen.
<plugins> <!-- https://dmp.fabric8.io/ 0. Docker starten 1. mvn docker:build 2 mvn docker:run --> <plugin> <groupId>io.fabric8</groupId> <artifactId>docker-maven-plugin</artifactId> <version>0.27.2</version> <configuration> <images> <image> <name>${project.name}:${project.version}</name> <build> <from>openjdk:9</from> <assembly> <descriptorRef>artifact</descriptorRef> </assembly> <cmd>java -jar maven/${project.name}-${project.version}.jar -v</cmd> </build> <run> </run> </image> </images> </configuration> <executions> <execution> <id>docker:build</id> <phase>package</phase> <goals> <goal>build</goal> </goals> </execution> </executions> </plugin>
Damit ein mvn install läuft muss erst die Docker.App gestartet werden:
In Eclipse läuft es dann:
Dann kann z.B. auf der Maven Konsole ein mvn docker:build:
und auch ein mvn docker:run ausgeführt werden:
dann wird wie man sehen kann, das Java Programm im Jar ausgeführt (Versionsangabe -v), wie im Plugin angegeben:
java -jar maven/${project.name}-${project.version}.jar -v
Es können in Eclipse aber auch die Docker Tools 4.0.0. installiert werden:
dann hat man nach einem Restart vier neue Views für die einfache Verwaltung von Docker Kontainer bzw. Images:
Hier mal ein paar Beispiele:
Die Docker Exporer View:
Die Docker Images View:
Ähnliche Artikel:
- Wie können auf einem Mac OS X dmg (Apple disk image) Archive mit Maven und hdiutil erstellt werden?
- Wie können Artifacte nach Maven Central (Nexus) mit einem Mac hochgeladen werden?
- Wie kann ein JEE 8 Projekt mit GlassFish v5 in Docker mit Eclipse Oxygen in 5 Minuten mit Archetyp erstellt werden?