如何在docker容器中复制目录,除了任何一个目录?

时间:2018-01-21 17:18:36

标签: linux docker docker-compose devops docker-swarm

我有一些目录/文件,我想复制除了以外的所有目录/文件 从主机到Docker容器的JDialog目录下面的命令可以正常复制容器中的所有目录/文件:

my_data

如何将所有目录/文件从主机复制到容器,docker cp ./ container_name:/my-dir 目录除外。

1 个答案:

答案 0 :(得分:1)

目前在执行--exclude时没有办法docker cp。如果您有Dockerfile,则可以使用.dockerignore

来实现此目的

以下是我现在可以建议的快速黑客/解决方法 -

mkdir /tmp/to_be_copied
rsync -avzh ./ /tmp/to_be_copied --exclude my_data
docker cp /tmp/to_be_copied 0132381bc8d6:/my_dir
rm -rf /tmp/to_be_copied

使用rsync(预安装在许多操作系统中)将文件夹结构复制到其他位置,并排除目录my_data。发布此内容后,您可以轻松地将docker cp与新创建的目录一起使用,不要忘记在最后进行清理。希望它有所帮助!