Docker:无法复制容器内的文件

时间:2016-09-06 00:29:51

标签: docker dockerfile cp

这不是关于在主机和容器之间传输文件,而是在容器内部。

app.js 存在于构建目录中。

Step 7 : RUN ls build
 ---> Running in 8461a550a5db
app.js
app.js.map
css
html
img
js
 ---> 22a863b60265

应复制到 static 文件夹。

Removing intermediate container 8e195477d342
Step 9 : RUN cp build/app.js static/
 ---> Running in 0a49669338e0
 ---> 41cb4d3039d1

但它不存在。为什么呢?

Removing intermediate container 0a49669338e0
Step 10 : RUN ls static/
 ---> Running in 4cdb5f74a722
css
html
img
js

尝试: RUN cp ./build/app.js ./static / - 也不起作用。

1 个答案:

答案 0 :(得分:0)

你能尝试使用没有缓存的docker build吗?

docker build -t "your_app" --no-cache=true .

问题在这里:

Removing intermediate container 0a49669338e0

来自Docker文档:https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/#build-cache

  

在构建图像的过程中,Docker将逐步完成   Dockerfile中的指令按指定的顺序执行。   在检查每条指令时,Docker将查找现有图像   在它的缓存中,它可以重用,而不是创建一个新的(重复)   图片。如果你根本不想使用缓存,你可以使用   docker build命令中的--no-cache = true选项。