docker - 将几个目录复制到另一个目录
您如何将多个目录复制到Docker中的目标目录?我不想复制目录内容,而是复制整个目录结构。COPY
和ADD
命令复制目录内容,展平结构,这是我不想要的。也就是说,如果这些是我的来源:
.
├── a
│ ├── aaa.txt
│ └── uuu.txt
├── b
│ ├── ooo.txt
│ └── ppp.txt
└── c
└── jjj.txt
我希望将其部署到docker镜像:
code/
├── a
│ ├── aaa.txt
│ └── uuu.txt
├── b
│ ├── ooo.txt
│ └── ppp.txt
└── c
└── jjj.txt
我知道我可以这样做:
ADD a /code/a
ADD b /code/b
ADD c /code/c
但是,与linux
cp
命令相比,这太冗长了。它还会创建不必要的图层。有没有更好的办法?
最佳答案
你可以做:
COPY ./ /code/
它将所有内容从当前文件夹复制到镜像的/ code文件夹。
因此,您可以创建.dockerignore文件,以防止添加除a,b和c之后的其他文件/目录。例如d,e和f是当前文件夹中的其他目录,这些目录不应出现在结果图像中,然后.dockerignore文件的内容将如下所示:
Dockerfile*
d
e
f
这种方法的缺点是它还会将.dockerignore复制到/ code文件夹中。
关于docker - 将几个目录复制到另一个目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52605123/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
2016-01-16 【转】Cannot change version of project facet Dynamic Web Module to 3.1 (Eclipse Maven唯一解决方案)
2016-01-16 【转】国内较快的maven镜像
2016-01-16 Could not calculate build plan: Plugin org.apache.maven.plugins:maven-resources-plugin:2.5
2016-01-16 【转】Android 快捷方式的创建
2016-01-16 【转】Android应用开发allowBackup敏感信息泄露的一点反思
2015-01-16 mysql通过查看跟踪日志跟踪执行的sql语句