Docker无法使用copy命令查找文件或目录

时间:2018-06-18 22:07:07

标签: docker

所以我对docker和它的设置都很陌生,但是我一直在使用这个dockerfile大约半个小时试图获得一个工作图像,以获得我所拥有的角度6应用程序。

除了凌乱的dockerfile之外,最后一点似乎并没有起作用。 所以我在/workdir目录中为所有这些东西工作,构建我的角度应用程序等。然后我移出到根目录,然后想要将/workdir/dist目录复制到根{{ 1}}文件夹然后删除工作目录。我在拷贝行找到了一个文件或目录。但是,如果我运行ls,我会看到/dist存在,如果我运行workdir,我会看到其中有文件。

我的linux脚本和docker理解非常有限,但我不明白为什么这似乎失败了。

ls ./workdir/dist

我在docker build命令中的最后几行:

FROM node:8
ENV ExposedPort 80
WORKDIR /workdir
COPY . /workdir
RUN npm install
RUN npm run production-angular
COPY package.json dist
COPY index.js dist
WORKDIR /
RUN ls
RUN ls workdir
RUN ls workdir/dist
COPY workdir/dist dist
CMD node index.js
EXPOSE ${ExposedPort}

1 个答案:

答案 0 :(得分:1)

COPY ./workdir更改为COPY workdir

https://github.com/docker/for-linux/issues/90#issuecomment-326045261

  

Dockerfile中的路径始终相对于上下文目录。上下文目录是传递给docker build的位置参数(通常是。)。

     

如果上下文目录中没有./tmp,那么这就是预期的行为。