背景:从vm 复制一个文件到容器内:docker cp /tmp/id_rsa 9f9997271130:/tmp/id_rsa
不提示任何错误,发现但是容器内就是没有id_rsa这个文件。
9f9997271130中的tmp目录如下:
[root@docker9f9997271130 /tmp]
#df -hl
Filesystem Size Used Avail Use% Mounted on
/ 5.6T 256G 5.1T 5% /
/dev/v01d 5.6T 256G 5.1T 5% /cloud/conf/global
shm 190G 0 190G 0% /dev/shm
tmpfs 190G 0 190G 0% /dev/shm
/dev/shm 190G 0 190G 0% /tmp
发现/tmp 有挂载文件
docker cp的行为是 copy到容器的 merged目录 + 你填的目标目录,拼起来的。
实际上并没有失败,只是因为你把 /dev/shm 挂到 /tmp目录下了,所以copy过去的文件,被/dev/shm覆盖了