【问题标题】:Can't create a docker image for COPY failed: stat /var/lib/docker/tmp/docker-builderXXXXXX error无法为 COPY 创建 docker 映像失败:stat /var/lib/docker/tmp/docker-builderXXXXXX 错误
【发布时间】:2020-08-20 14:20:35
【问题描述】:

我无法建立自己的形象。下面是我觉得挑战的线。如果我做错了什么,请看看并建议我。我正在尝试将当前文件夹中存在的 zip 文件复制为 Dockerfile 和 docker-compose 文件。我也没有 .dockerignore 文件。我将文件名声明为 ENV 并将该值传递到 docker-compose 文件中。

COPY ${FILE_NAME}.zip /app/

我的 docker-compose 文件是这样的。

version: '3.7'
services:
    tws:
        build:
            context: .
            dockerfile: Dockerfile
        ports:
            - "8085:8085"
        environment:
            - FILE_NAME=xxxxx

以下是docker-compose up期间出现的错误

ERROR: Service 'yyy' failed to build: COPY failed: stat /var/lib/docker/tmp/docker-builder467027701/.zip: no such file or directory

编辑:如果我在 Dockerfile 中提供实际名称而不是 ENV,则可以正常工作

【问题讨论】:

    标签: docker docker-compose dockerfile


    【解决方案1】:

    我认为您需要的是构建参数,因为您在构建时而不是在容器启动时执行 COPY 任务。
    删除那部分:

    environment:
       - FILE_NAME=xxxxx
    

    并更新您的作曲,例如:

    build:
       args:
         - FILE_NAME=xxxxx
    

    并在 Dockerfile 中声明ARG

    FROM ...
    ARG FILE_NAME
    ...
    COPY ${FILE_NAME}.zip /app/
    

    【讨论】:

    • 你是救生员。谢谢!
    猜你喜欢
    • 2018-04-05
    • 2019-11-12
    • 2018-11-23
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-09
    相关资源
    最近更新 更多