背景:从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覆盖了

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐