我是新來的碼頭工人,在gradle中使用bmuschko插件創建碼頭圖像,容器並運行它。只有buildImage任務似乎工作。當創建一個容器,它說創建容器時未指定屬性'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的應用:檢查:REST的應用:createContainer ID !!!!!!! 8cf8fc8d2af9 :REST的應用:createContainer失敗
故障:建立與失敗例外。
出了什麼問題:配置任務 ':rest-app:createContainer'時發現問題。
沒有爲屬性'imageId'指定值。嘗試:使用 --info或--debug選項運行以獲得更多日誌輸出。
例外情況是:org.gradle.api.tasks.TaskValidationException:在任務':rest-app:createContainer'的配置中發現問題 。 在 org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:55)
任何人都可以請讓我知道如何解決這個問題?提前致謝。
不熟悉Gradle,但通過錯誤消息判斷,它看起來像沒有指定圖像ID。你不應該給你一個基礎的形象,你建立自己的形象? – Pubudu
@Pubudu感謝您的回覆。由於它具有'targetImageId {buildImage.getImageId()}',所以不是必需的。 – DMA