如何将文件/文件夹从 Windows 共享位置复制到 docker 容器中?

时间:2021-03-04 06:46:35

标签: linux docker powershell jenkins jenkins-pipeline

为了将文件/文件夹从主机复制到容器,反之亦然,我可以看到像 -

这样的 docker 命令
docker cp foo.txt mycontainer:/foo.txt
docker cp mycontainer:/foo.txt foo.txt

但是我有一个来自远程位置的共享文件夹,我需要将其复制到 docker 容器内。

即我的管道在主机 A(可能是 Windows/Linux)上运行,共享文件夹在远程主机 B(它将始终是 Windows 机器)上,需要将该文件夹从主机 B 复制到主机 A 上运行的容器

是否有任何 docker 命令可以实现此目的?

在我们的例子中,主机 A 可能是 Windows 或 Linux 机器,因此我必须以不同的方式处理它,因此无论操作系统如何,我都会寻找一些 docker 命令。

1 个答案:

答案 0 :(得分:0)

共享文件夹位于远程主机 B 上,使用 SMB protocol。据我所知,docker 不支持通过 SMB 协议将文件复制到容器的任何直接命令。

就您而言,让一切顺利进行。您将需要再创建一个容器来运行 samba-client。然后你可以从主机 B 获取文件并使用如下命令将其保存到主机 A:

smbget -R smb://hostB/directory

然后就可以像往常一样将文件从主机 A 复制到容器中。

相关问题