Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker通过Gradle,不起作用,DockerCompose起作用_Docker_Gradle_Docker Compose_Dockerfile_Build.gradle - Fatal编程技术网

Docker通过Gradle,不起作用,DockerCompose起作用

Docker通过Gradle,不起作用,DockerCompose起作用,docker,gradle,docker-compose,dockerfile,build.gradle,Docker,Gradle,Docker Compose,Dockerfile,Build.gradle,我想让docker穿过gradle。我有一个Dockerfile和一个docker-compose.yml。当我通过docker compose运行docker时,它工作得非常好,但当我运行gradle build时,它会在我复制或添加的dockerfile中抛出错误。我正在使用planitr gradle docker插件运行docker 这是我的码头工人 services: microbrains: build: . image: dummy/microbrains

我想让docker穿过gradle。我有一个Dockerfile和一个docker-compose.yml。当我通过docker compose运行docker时,它工作得非常好,但当我运行gradle build时,它会在我复制或添加的dockerfile中抛出错误。我正在使用planitr gradle docker插件运行docker

这是我的码头工人

services:
  microbrains:
    build: .
    image: dummy/microbrains
    container_name: dummy
    ports: 
      - "8080:8080"
这是我的build.gradle.kts

plugins {
  id ("com.palantir.docker") version "0.26.0"
}

tasks {

  register("check"){}

  register("buildNar", Exec::class) {
    workingDir = file("dummy-robots")
    commandLine = listOf( "cmd","./gradlew", "build")
  }
  register("stage"){
    dependsOn("docker")
  }
}

docker {
  files(fileTree("dummy-robots"){
    include("**/*.nar")
  },
    fileTree("sh"),
    fileTree("nifi-web-ui-overrides"),
    fileTree("nifi-framework-nar-overrides"),
    fileTree("before"),
    fileTree("flowfont"),
    file(".dockerignore")
    )
  name = "dummy/microbrains"
  tag("heroku", "registry.heroku.com/dummy-microbrains/web")
  dependsOn(tasks.getByName("buildNar"))
}
正常运行现在我已经尝试使用copySpec,但我不确定,目录是不正确的。但是我没有运气。我的文件是

FROM openjdk:8-jre
LABEL maintainer="Apache NiFi <dev@nifi.apache.org>"
LABEL site="https://nifi.apache.org"

ARG UID=1000
ARG GID=1000
ARG NIFI_VERSION=1.9.0
ARG BASE_URL=https://archive.apache.org/dist
ARG MIRROR_BASE_URL=${MIRROR_BASE_URL:-${BASE_URL}}
ARG NIFI_BINARY_PATH=${NIFI_BINARY_PATH:-/nifi/${NIFI_VERSION}/nifi-${NIFI_VERSION}-bin.zip}
ARG NIFI_TOOLKIT_BINARY_PATH=${NIFI_TOOLKIT_BINARY_PATH:-/nifi/${NIFI_VERSION}/nifi-toolkit-${NIFI_VERSION}-bin.zip}
ENV NIFI_BASE_DIR=/opt/nifi


ADD sh/ ${NIFI_BASE_DIR}/scripts/

来自openjdk:8-jre的

LABEL maintainer=“Apache NiFi”
标签站点=”https://nifi.apache.org"
ARG UID=1000
ARG GID=1000
ARG NIFI_版本=1.9.0
ARG BASE\u URL=https://archive.apache.org/dist
ARG MIRROR\u BASE\u URL=${MIRROR\u BASE\u URL:-${BASE\u URL}
ARG NIFI_BINARY_PATH=${NIFI_BINARY_PATH:-/NIFI/${NIFI_VERSION}/NIFI-${NIFI_VERSION}-bin.zip}
ARG NIFI_TOOLKIT_BINARY_PATH=${NIFI_TOOLKIT_BINARY_PATH:-/NIFI/${NIFI_VERSION}/NIFI TOOLKIT-${NIFI_VERSION}-bin.zip}
环境NIFI_基本目录=/opt/NIFI
添加sh/${NIFI\u BASE\u DIR}/脚本/
该错误出现在Dockerfile的第
ADD sh/${NIFI\u BASE\u DIR}/scripts/
行,并且是
错误:“/sh”未找到:未找到
。对于任何复制命令,它都会抛出未找到的/path(dockerfile中定义的路径)