【问题标题】:Azure pipeline error for Docker "Client version 1.18 is too old. Minimum supported API version is 1.24"Docker 的 Azure 管道错误“客户端版本 1.18 太旧。支持的最低 API 版本为 1.24”
【发布时间】:2019-06-17 02:13:44
【问题描述】:

我正在使用以下 mvn docker 配置文件在 azure 上运行构建管道。

                   <plugin>
                        <groupId>io.fabric8</groupId>
                        <artifactId>docker-maven-plugin</artifactId>
                        <version>0.25.2</version>
                        <configuration>
                         <configuration>
                            <dockerHost>${docker.host}</dockerHost>
                            <images>
                                <image>
                                    <alias>${project.artifactId}</alias>
                                    <name>inst-iot/${project.artifactId}:${project.version}</name>
                                    <build>
                                        <from>java:8-jdk-alpine</from>
                                        <assembly>
                                            <descriptorRef>artifact</descriptorRef>
                                        </assembly>
                                        <ports>
                                            <port>80</port>
                                        </ports>
                                        <env>
                                            <SERVER_PORT>80</SERVER_PORT>
                                            <JAVA_OPTS>-Xmx2048m</JAVA_OPTS>
                                        </env>
                                        <cmd>
                                            <shell>java $JAVA_OPTS -jar
                                                /maven/${project.name}-${project.version}.jar
                                                --spring.profiles.active=docker</shell>
                                        </cmd>
                                        <tags>
                                            <tag>latest</tag>
                                            <tag>${project.version}</tag>
                                        </tags>
                                    </build>
                                </image>
                            </images>
                        </configuration>

当它在Hosted Windows 2019 with VS2019 代理池上运行时,它会抛出如下错误,

[ERROR] DOCKER> Unable to check image [openjdk:8] : client version 1.18 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version (Bad Request: 400) [client version 1.18 is too old. Minimum supported API version is 1.24, please upgrade your client to a newer version (Bad Request: 400)]

我认为这与代理机器上的Docker 版本有关。我该如何解决这个问题?

【问题讨论】:

    标签: azure-devops azure-pipelines azure-pipelines-build-task


    【解决方案1】:

    查看当前 Alpine 的 OpenJDK 镜像,支持的 JDK(用于 Alpine)镜像标签如下:

    标签:13-ea-19-jdk-alpine3.9、13-ea-19-alpine3.9、13-ea-jdk-alpine3.9、13-ea-alpine3.9、13-jdk-alpine3 .9、13-alpine3.9、13-ea-19-jdk-alpine、13-ea-19-alpine、13-ea-jdk-alpine、13-ea-alpine、13-jdk-alpine、13-alpine

    此列表来自:https://github.com/docker-library/official-images/blob/8d9c213e6129df5858a85c8368515d90e737c1f8/library/openjdk#L13

    并且图像8-jdk-alpine 不再可用,因为它将不受支持。

    因此你应该使用13-jdk-alpine的标签,完整的标签是openjdk:13-jdk-alpine

    【讨论】:

    • 我的错!谢谢(你的)信息。我会更新我的答案。谢谢@ShaykiAbramczyk!
    【解决方案2】:

    这也可以通过将docker-maven-plugin 版本更改为0.30.0 来解决

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-09-15
      • 1970-01-01
      • 1970-01-01
      • 2017-08-21
      • 2022-07-19
      • 1970-01-01
      相关资源
      最近更新 更多