Изображение Docker не получает имя изображения из pom.xml
Я создаю образ докера с помощью spotify. Мой образ докера успешно создается, но без имени. Я получаю ниже на консоли:
Изображение будет построено без имени
pom.xml
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.8.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.nv</groupId>
<artifactId>microeurekaserver</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>MicroEurekaServer</name>
<description>Eureka Server</description>
<properties>
<java.version>1.8</java.version>
<spring-cloud.version>Finchley.SR2</spring-cloud.version>
<docker.image.prefix>nvarshney44/nvarshney</docker.image.prefix>
</properties>
<build>
<plugins>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<forceTags>true</forceTags>
<imageTags>
<imageTag>${project.version}</imageTag>
<imageTag>latest</imageTag>
</imageTags>
<resources>
<resource>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
<serverId>docker-hub</serverId>
<registryUrl>https://index.docker.io/v1/</registryUrl>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
Пожалуйста, помогите мне, что не так с этим. В выводе maven он показывает dockerfile: может быть, null стоит некоторой проблемы.
2 ответа
Чтобы дать образу Docker имя, вам необходимо заполнить поле "хранилище":
<configuration>
<repository>your-name-here</repository> <!-- ${project.artifactId} is a good choice -->
<tag>${project.version}</tag>
</configuration>
Это на самом деле согласуется с тем, как работает Docker push - он воспринимает имя как адрес хранилища.
Где вы определяете значения этой переменной ${docker}
а также ${project}
? Это будет что-то вроде:
<docker>
<image>
<prefix>
value
</prefix>
</image>
</docker>
Пожалуйста, проверьте: использование переменных в pom.xml