Dockerfile中COPY添加多个文件或目录区别
1.复制多个文件到同一个目录
1 | COPY file1.txt file2.txt /gaga/ |
这会将file1.txt和file2.txt复制到容器内的/gaga/目录中。
2.复制目录及其内容:
1 | COPY dir1 dir2 /gaga/ |
这会将dir1和dir2两个目录连同它们的内容复制到/gaga/目录下。如果/gaga/目录不存在,Docker会创建它。
3.使用通配符复制文件
可以使用通配符来匹配多个文件:
1 | COPY *.txt /gaga/ |
这会将构建上下文中所有以.txt结尾的文件复制到/gaga/目录。
4.注意事项:
- 源路径是相对于Dockerfile所在的目录或构建上下文的。
- 如果目标路径以
/结尾,表示这是个目录,否则,目标路径被视为文件名,文件内容将被写入这个文件。 - 在使用通配符时,确保你的Docker版本支持通配符(较新的Docker版本都支持)。
- 确保你有权限读取源文件并写入目标位置。