在创build容器时,没有为属性“imageId”指定值

我是新来的docker工人,在gradle中使用bmuschko插件创builddocker图像,容器并运行它。 只有buildImage任务似乎工作。 它创build一个容器时说

没有为'imageId'属性指定值

这是我的gradle文件片段。

dependencies { classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") classpath 'com.bmuschko:gradle-docker-plugin:2.6.5' } import com.bmuschko.gradle.docker.tasks.container.* import com.bmuschko.gradle.docker.tasks.image.* task copyJar(type: Copy) { dependsOn 'jar' from 'build/libs/rest-app-0.0.1-SNAPSHOT.jar' into 'build/docker' from 'src/main/resources/Dockerfile' into 'build/docker' } task buildImage(type: DockerBuildImage) { dependsOn 'copyJar' inputDir = file('build/docker'); url = 'unix:///var/run/docker.sock' tag = 'rest-app/nci:0.1' } task createContainer(type: DockerCreateContainer) { dependsOn buildImage containerName = 'my-rest-app' targetImageId { buildImage.getImageId() } portBindings = ['8080:8080'] } task startContainer(type: DockerStartContainer) { dependsOn createContainer targetContainerId { createContainer.getContainerId()} } build.dependsOn copyJar build.dependsOn buildImage build.dependsOn createContainer 

这是stacktrace片段。

….. rest-app:check:rest-app:createContainer ID !!!!!!! 8cf8fc8d2af9:rest-app:createContainer FAILED

失败:生成失败,出现exception。

出了什么问题:在任务“rest-app:createContainer”的configuration中发现了一个问题。

没有为属性“imageId”指定值。 试试:运行–info或–debug选项来获得更多的日志输出。

例外情况是:org.gradle.api.tasks.TaskValidationException:在任务':rest-app:createContainer'的configuration中发现问题。 在org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:55)

任何人都可以让我知道如何解决这个问题? 提前致谢。

得到了问题。 看起来像function即targetImageId(...)不能按预期方式工作。 所以从2.6.6降级到2.6.5就像魅力一样。 这是在官方的github网站上创build并回答的错误 。