您如何将多个目录复制到Docker中的目标目录?我不想复制目录内容,而是复制整个目录结构。
COPYADD命令复制目录内容,展平结构,这是我不想要的。也就是说,如果这些是我的来源:

.
├── 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/

docker - 将几个目录复制到另一个目录的更多相关文章

  1. 图片的copy,从一个目录复制到另一个目录

    代码: public function index(){ $path='G:/相片/2014.9.8深圳莲花山/IMG_1282.JPG'; $path=iconv('utf-8','gb2312', ...

  2. python把文件从一个目录复制到另外一个目录,并且备份

    #!/usr/bin/python # -*- coding: utf-8 -*- import os,sys,md5,datetime,shutil,time,zipfile,chardet # c ...

  3. 《Advanced Bash-scripting Guide》学习(八):从一个目录移动整个目录树到另一个目录

    本文所选的例子来自于<Advanced Bash-scripting Gudie>一书,译者 杨春敏 黄毅 ABS书上的例子: 从一个目录移动整个目录树到另一个目录 #!/bin/bash ...

  4. Python脚本:linux上将筛选的文件夹复制到另一个目录,保存目录结构以及文件和文件夹操作方法

    import os,shutil def newDir(dir_path): if not os.path.exists(dir_path): os.makedirs(dir_path) def co ...

  5. Java将一个目录下的所有数据复制到另一个目录下

    /* 将"C:\\JavaProducts\\Source"下的所有数据复制到"C:\\Target"下 */ import java.io.*; public ...

  6. 在Docker平台实现MySQL Replication(复制)

    MySQL Replication提供了数据库之间复制数据的功能,通过这个功能可以让一个数据库的数据更改自动同步到另外一个数据库.通常用这个功能来实现数据备份.数据容灾.数据冗余,进一步实现数据的读写 ...

  7. linux复制指定目录下的全部文件到另一个目录中

    linux复制指定目录下的全部文件到另一个目录中复制指定目录下的全部文件到另一个目录中文件及目录的复制是经常要用到的.linux下进行复制的命令为cp.假设复制源目录 为 dir1 ,目标目录为dir ...

  8. C#实现目录复制

     摘自:http://www.cnblogs.com/zxjay/archive/2008/10/29/1322517.html FCL提供了文件移动.文件复制.目录移动的方法,但没提供目录复制的 ...

  9. ASP.NET Core MVC压缩样式、脚本及总是复制文件到输出目录

    前言 在.NET Core之前对于压缩样式文件和脚本我们可能需要借助第三方工具来进行压缩,但在ASP.NET MVC Core中则无需借助第三方工具来完成,本节我们来看看ASP.NET Core MV ...

  10. Docker aufs存储驱动layer、diff、mnt目录的区别

    Docker基础信息 首先,先查询Docker使用的后端存储.使用命令docker info,主要关注Storage Driver相关的部分. $ docker info ... Server Ver ...

随机推荐

  1. USB 控制写传输、控制读传输、无数据控制传输都是在什么场景下?

    在 USB 通信中,控制传输(Control Transfer)是一个非常常见且重要的传输类型,主要用于配置设备.查询设备状态以及发送和接收命令.控制传输有三种主要形式:控制写传输(Control W ...

  2. electron的两个进程

    electron 有两个类别的进程,一个是主进程,另一个是渲染进程 主进程: 启动后一直存在的,相当于一个树的主干并不会展示出来,是看不到的所有跟系统资源交互的操作都在这里进行操控渲染进程,新建或销毁 ...

  3. ORM的性能争议

    1 二次封装---业务的执行,步骤多一些 2 映射的过程---必然从类到Sql语句变化---类---Sql语句---必然会有大量的反 射(损耗性能) 3 Sql语句僵化---数据库执行有性能损耗 部分 ...

  4. yarn 命令大全

    npm install yarn -g npm install --global yarnyarn 中文网:https://yarn.bootcss.com/docs/install/#windows ...

  5. vue-template-admin 模板

    1. 替换登录页的样式 2. settings.js 3. layout 文件夹 4. store 文件夹 4.1 app.js

  6. 说一下tcp三次握手

    1. 客户端发送syn请求连接 : 2. 服务器检验syn,然后发送syn和ack确认连接: 3. 客户端接收ack和syn,然后发送ack建立连接 :

  7. linux运维巡检脚本

    #!/bin/bash#author by acrossyao#date: 2021-02-08#张波勇巡检脚本echo "--------------------------------- ...

  8. CTime类缺陷

    如果构造CTime的时间不在下面这个范围内,会抛出异常

  9. css动画(仿微信聊天页面)

    微信聊天框以其简洁直观的界面和流畅的交互体验而广受欢迎.本文将展示如何利用HTML和CSS技术,在自己的网页上实现类似微信的聊天框效果.我们将一步步指导您完成,让网站或应用也能拥有专业且用户友好的聊天 ...

  10. Git仓库操作笔记[Git repositories]

    指令操作:Git Bash 重点:远程库和本地库之间操作 首先得在github网站 上创建一个 repository ,才能同步. 命令前提是进入githubLib 下的当前目录. 1.从远程库克隆到 ...