Dockerfile 不将图像文件夹复制到节点红色目录

Dockerfile not copying images folder to node-red directory

我想将一些图片复制到 node-red 图像中的文件夹,但是它似乎不起作用,即使其他 COPY 命令有效。

FROM nodered/node-red AS base

USER root

COPY package.json /data/

COPY flows.json /data/
COPY img/ /data/
COPY new_settings.js /data/settings.js


CMD ["npm", "start", "--cache", "/data/.npm", "--", "--userDir", "/data", "--settings new_settings.js"]

img/ 与我复制的其他文件 new_settings.jsflows.json 位于同一目录中。日志没有报告任何错误,但每次我去检查文件是否在那里,都找不到它们。

这是我的文件夹层次结构:

- node-red
  + img
  Dockerfile
  flows.json
  new_settings.js
  package.json

为了检查文件是否存在,我正在使用 docker Desktop,它允许我直接进入图像的 CLI。在那里,我通过 运行 命令 cd /data/ 访问数据文件夹,然后 ls 查看所有文件。

像您一样将卷映射到 /data 时,您将图像中的所有内容隐藏在该路径中,并将其替换为映射到它的卷中的任何内容。

要查看图像中的数据,您不能将卷映射到 /data

有关详细信息,请参阅此处的第二个要点:https://docs.docker.com/storage/#tips-for-using-bind-mounts-or-volumes