“ docker cp”所有文件从一个文件夹到现有的容器文件夹

当我尝试将文件从一个文件夹复制到现有的容器文件夹时,是否遗漏了什么:

医生

I want to copy files within the build(host) folder to html in my container:

docker cp ./src/build b081dbbb679b:/usr/share/nginx/html

为了清楚起见,我需要从主机复制到容器。

But it copies the whole build folder and copies it to ..html/build

我只需要将构建文件夹中的文件(和子文件夹)复制到. html 中。

是我遗漏了什么,还是我必须一个一个地复制每个文件?

134315 次浏览

下面是来自 医生的关于如何在 docker 中使用 cp命令的解释,它将在 SRC_PATH的末尾修复您与 /.的问题:

  • SRC_PATH不以 /.结束(即: slash后面跟着 )

    • 将源目录复制到此目录中
  • SRC_PATH确实以 /.结束(即: 斜杠后面跟着 )

    • 将源目录的 内容复制到此目录中

在容器和本地文件系统之间复制文件/文件夹的格式如下:

  • 将文件复制到容器内的文件夹:

    docker cp ./src/build/index.html ContainerName:/app/
    

    上面的例子显示 index.html文件正在复制到容器内的 app文件夹

  • 将所有文件复制到容器内的文件夹中:

    docker cp ./src/build/. ContainerName:/app/
    

    above example shows all files inside build folder are copying to app folder inside container

只要用“(点-而不是“ *”在 Linux 中)后,您的文件路径,它将复制整个文件从文件夹

Docker cp/file/path/* Container erId:/filepath/nginx/html/

docker cp /file/path/. containerId:/filepath/nginx/html/

在 Windows 中,您可以迭代遍历文件夹中的所有 txt 文件,并使用以下命令将它们复制到容器中:

for /r %i in (*.txt) do docker cp %i containerId:/blabla/bla/