如何将多个文件复制到docker数据卷中

时间:2016-09-09 21:06:32

标签: docker docker-volume docker-container

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

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

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

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

有人知道解决此问题吗?

2 个答案:

答案 0 :(得分:11)

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

docker cp /tmp/my_data/. my_container:/my_data

答案 1 :(得分:0)

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

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

*注意:具体的解决方法是不要复制my_data文件夹中的隐藏文件或文件夹。