Spring boot SpringBoot2.3Maven Docker版本增加了;docker.io“;前缀
我正在尝试使用Spring boot SpringBoot2.3Maven Docker版本增加了;docker.io“;前缀,spring-boot,docker,Spring Boot,Docker,我正在尝试使用mvn-Spring-Boot:buildimageas为我的Spring-Boot服务构建一个Docker映像。它还提到 默认情况下,结果是一个名为docker.io/:latest的图像。您可以在Maven中使用 org.springframework.boot springbootmaven插件 我的/首选/姓名 看起来很简单。。。但是,这会导致Docker映像名为Docker.io/my/preferred/name 如何去掉docker.io前缀?我猜你用这么多斜杠(
mvn-Spring-Boot:buildimage
as为我的Spring-Boot服务构建一个Docker映像。它还提到
默认情况下,结果是一个名为docker.io/:latest的图像。您可以在Maven中使用
org.springframework.boot
springbootmaven插件
我的/首选/姓名
看起来很简单。。。但是,这会导致Docker映像名为Docker.io/my/preferred/name
如何去掉
docker.io
前缀?我猜你用这么多斜杠(/
)混淆了解析器。由于没有合理的方法来解析my/preferred/name
,因此它将被视为一个名称(作为一个整体),在这种情况下,默认的docker.io/library/
将被添加到它前面
下面是如何在name
标记中指定图像的名称
- name(映射到docker.io/library/name)
- 域名
- 域:端口/名称
- 域:端口/名称:标记
- 域:端口/name@digest
您的
my/preferred/name
名称属于第一类。但它没有添加docker.io/library
,结果是docker.io/my/preferred/name
。您尝试过使用一些普通名称吗?因为其中有2个斜杠的不是有效的图像名称。图像的名称部分最多应该有一个斜杠分隔注册表地址(URL或IP,可选带有端口);同样的问题,docker.io
仍然是预先准备好的。忽略我的最后一条评论:maven日志输出状态为“已成功构建映像'docker.io/my preferred/name:latest'”,但docker中的映像名实际上是my preferred/name:latest
。所以谢谢你,这很有效。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<image>
<name>my/preferred/name</name>
</image>
</configuration>
</plugin>
</plugins>
</build>