【问题标题】:Accessing a Windows CIFS share from Python code running in a Docker container从 Docker 容器中运行的 Python 代码访问 Windows CIFS 共享
【发布时间】:2021-02-08 18:17:28
【问题描述】:

我正在尝试从将在 Docker 容器中运行的 Python 代码访问多个 Windows CIFS 共享。我已经看到有多个 SMB 库,如 pysmbsmbprotocol,声称它们可用于访问 CIFS 共享,但我还没有设法让它工作,也没有看到一个在线示例它们用于访问 CIFS 共享。

我知道一种解决方案是将共享挂载到主机上并将其挂载到容器中,但如果可能的话,我宁愿避免这种情况,因为代码需要访问多个共享,而且并非所有共享都是已知的当容器启动时。

我错过了什么吗?关于如何从运行在 Linux 上的 Python 代码访问 CIFS 共享,是否有一个好的方法或一个很好的在线示例? (我知道在 Windows 上你可以简单地打开该文件夹,但我需要它才能在 Linux 上工作)。

【问题讨论】:

    标签: python linux docker smb cifs


    【解决方案1】:

    已知无效的是在容器unless the container was started with privileges 内调用mount。但是,客户端代码也可以连接到 CIFS 驱动器而无需先挂载目录(例如,对于 Java,它是 jcifs-ng)。

    了解您使用的库在内部是如何工作的。如果它可以直接连接继续。否则,您也可以将 smbclient 添加到您的容器中并调用它来访问 CIFS 端的文件。

    【讨论】:

      猜你喜欢
      • 2015-03-15
      • 2011-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-22
      • 1970-01-01
      • 2017-02-25
      相关资源
      最近更新 更多