Wie wird ein Java Programm im JAR in einem Docker Kontainer mit Maven aufgerufen? Und wie werden die Docker Tools in Eclipse installiert?

Erstellt am 3. Mai 2019 von It_berater

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:

  1. Wie können auf einem Mac OS X dmg (Apple disk image) Archive mit Maven und hdiutil erstellt werden?
  2. Wie können Artifacte nach Maven Central (Nexus) mit einem Mac hochgeladen werden?
  3. Wie kann ein JEE 8 Projekt mit GlassFish v5 in Docker mit Eclipse Oxygen in 5 Minuten mit Archetyp erstellt werden?