5

这听起来可能微不足道,但我找不到一种简单的方法将多个文件复制到 docker 卷的根文件夹中。我正在使用 Ubuntu Xenial 16.04Docker 1.12.1。例如,如果我有一个带有卷/my_data的 Ubuntu 容器:

docker run --name my_container -v /my_data -d ubuntu:latest 

在我的主机中,我有一个名为/tmp/my_data/的文件夹,其中包含多个文件,我想将所有这些文件复制到 my_container 中的卷/ my_data中。我尝试了以下方法,但它们都不起作用:

docker cp /tmp/my_data my_container:/
docker cp /tmp/my_data/* my_container:/my_data/

有人知道解决此问题的方法吗?

4

2 回答 2

13

实际上它比我更容易,只需要在主机路径中添加一个点,它就会按预期工作,复制/my_data文件夹中的所有文件和文件夹

docker cp /tmp/my_data/. my_container:/my_data
于 2016-09-10T04:05:39.167 回答
0

作为一种解决方法,您可以创建一个循环:

for i in /tmp/my_data/*;do docker cp /tmp/my_data/"$i" my_container:/my_data/;done

*注意:特定的解决方法不会复制 my_data 文件夹中的隐藏文件或文件夹。

于 2016-09-09T21:22:46.000 回答