当前位置: 首页 > 知识库问答 >
问题:

构建Spring Boot应用程序的Docker映像文件

苏晓博
2023-03-14

我试图通过使用dockerfile-maven-plugin为我的spring boot maven项目构建一个docker映像。我在Windows7上使用Docker工具箱,运行良好。

我得到以下错误:

pom.xml构建

<build>
    <plugins>
        <plugin>
          <groupId>com.spotify</groupId>
          <artifactId>dockerfile-maven-plugin</artifactId>
          <version>1.4.10</version>
          <executions>
            <execution>
              <id>default</id>
              <goals>
                <goal>build</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
             <serverId>docker-hub</serverId>
            <repository>${project.artifactId}</repository>
            <tag>${project.version}</tag>
            <buildArgs>
              <JAR_FILE>target/${project.build.finalName}.jar</JAR_FILE>
            </buildArgs>
          </configuration>
        </plugin>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                <execution>
                  <goals>
                    <goal>repackage</goal>
                  </goals>
                </execution>
          </executions>
             <configuration>
                <outputDirectory>D:\spring\MicroServiceOutput</outputDirectory>
            </configuration>
        </plugin>
    </plugins>
</build>

我无法得到为什么我们需要谷歌默认凭据来建立一个本地图像。请帮助我,因为我是新的Docker世界。

共有1个答案

童浩言
2023-03-14

这似乎是一个bug,默认情况下插件将googleContainerRegistryEnabled标志设置为true,所以您必须将该标志更改为false,尝试如下:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
    <spring-cloud.version>Greenwich.RC2</spring-cloud.version>
    <docker.image.prefix>prefix</docker.image.prefix>
    <docker.image.name>${project.artifactId}</docker.image.name>
    <docker.image.tag>${project.version}</docker.image.tag>
    <docker.file>Dockerfile</docker.file>
</properties>
        ...
        <plugin>
            <groupId>com.spotify</groupId>
            <artifactId>dockerfile-maven-plugin</artifactId>
            <version>1.4.10</version>
            <configuration>
                <googleContainerRegistryEnabled>false</googleContainerRegistryEnabled>
                <repository>${docker.image.prefix}/${docker.image.name}</repository>
                <tag>${docker.image.tag}</tag>
                <dockerfile>${docker.file}</dockerfile>
            </configuration>
            <executions>
                <execution>
                    <id>build</id>
                    <goals>
                        <goal>build</goal>
                        <goal>tag</goal>
                    </goals>
                </execution>
                <execution>
                    <id>push</id>
                    <goals>
                        <goal>push</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
 类似资料:
  • 我已经在一台乌班图机器上安装了Gitlab。我在Gitlab上有以ABC的名义的点网核心项目。 但是,在ABC repo中有多个不同目录的小doetnetcore应用程序,如abc1 abc2 abc3 abc4。 我想在ABC下编写一个管道,以便在开发人员在相应的目录中推送代码时创建docker映像。但这需要为该唯一的目录创建泊坞窗映像。 例如:开发人员将代码推送到abc3目录下,该时间管道运行

  • 我正在构建docker图像,但得到以下错误 有关更多详细帮助,请运行"ng[命令名]--help"致命错误:堆限制附近无效的标记-压缩分配失败-JavaScript堆内存溢出 [16:0x558f56668dc0] 212695 ms:标记-扫描971.6 (995.9)- ====JS堆栈跟踪 ========================================= 安全上下文:0x1

  • 目前,我发现谷歌云构建发生在构建docker图像的时候(不像我想象的那样,它会构建我的图像,然后执行我的图像来完成所有的构建)。那是在这篇文章里 谷歌云构建的快速启动 我有一个Dockerfile现在很简单 我有一个单一的下载和提取下载任何工件(zip文件)从最后的单构建运行构建(只有修改的服务器被构建或依赖于上一个CI构建的变化的服务器被构建,就像下游库可能被更改)。第一行只是列出了我需要在一个

  • 正如标题所示,我试图使用Docker为一个基于Kotlin的Micronaut应用程序构建一个本机映像。 我已将以下依赖项添加到文件中。 一切似乎都井然有序。映像启动并似乎接受连接,但当我启动http请求时,会出现以下错误。 有没有关于如何避免上述错误的线索?

  • 问题内容: 在创建新的ASP.NET Core MVC应用程序时,特别是在React / Redux(或其他需要Node.js的)模板上使用什么正确的Docker映像?如果不是特定的映像,对于由ASP.NET Core MVC支持的Node.js应用程序,应该在Dockerfile中遵循什么命令或过程? 除了运行支持MVC站点外,我不需要框架的SDK版本。 运行时映像未安装Node.js,在尝试运

  • 之后,我通过以下内容开始图像: 命令提示符显示服务器已成功启动,当我试图访问web应用程序时,这也可以工作: 显示适当的HTML欢迎页。