这个问题困扰了我几天,特此来论坛寻求答案,万分感谢!
Dockefile如下:
FROM java: 8 MAINTAINER hello <test@ 163.com > COPY *.jar /usr /local /java /app.jar
当前目录信息如下:
Dockerfile app.jar
构建镜像命令如下:
docker build
-t app-image .
执行容器命令如下:
docker run -it --name app -v /usr/local/docker/test:/usr/local/java app-image
最后发现,宿主机路径/usr/local/docker/test这个被创建了,是空目录,而容器路径/usr/local/java已经为空了。
我查阅过关于docker挂载卷的数据覆盖分析,说到以下两点:
1.宿主机目录为空时,将容器内数据复制到宿主机目录下。
2.宿主机目录不为空时,将宿主机目录下的数据复制到容器内,如果容器内目录不为空则将数据隐藏。
那么这里应该是符合第一点才对,但是容器内数据却清空了,百思不得其解。
使用其他方式挂载却不会,我想弄清楚为什么会出现这样的情况。
望大佬解惑,感谢!
回贴