从 docker 容器访问主机扫描仪
Access host machine scanners from docker container
我在 运行ing Alfresco 在 Linux 主机上使用 docker。
由于其他原因,我必须将 Alfresco 与 docker 一起使用。使用 maven
生成构建脚本 - 您可以在 "Generate your project from the archetypes" 部分的 link 下找到说明。
我已通过 USB 端口将 Brother DCP-J315W
连接到我的电脑。
当我执行时:
scanimage -L
我得到以下结果:
device 'brother4:bus2;dev1' is a Brother *DCP-J315W USB scanner
在 docker 容器中执行相同的命令 returns 错误,发现任何扫描器。
我尝试 运行 具有 host
网络模式的容器,但它似乎毫无意义,因为它不是网络扫描仪。
有什么方法可以在 docker 容器中使用主机扫描器吗?
即使 Docker 容器可以看到扫描仪,您仍然需要能够从扫描仪读取扫描文档并将其放入存储库的软件。与其解决 Docker-has-no-access-to-host-hardware 问题,也许更好的方法是简单地通过 WebDAV 将驱动器映射到 Alfresco。这使用 HTTP/S 所以你应该没有问题连接。
有了它,您应该能够 运行 主机上的扫描软件,并告诉它在安装的驱动器中存储扫描的图像。
另一种方法是检查您的扫描软件是否支持 CMIS,这是使用 Alfresco 等内容存储库的行业标准。如果是,您可以将扫描软件指向 Alfresco CMIS 服务 URL。这种方法可能比挂载驱动器方法更好,因为如果您将元数据分配给扫描的文档,则可以通过 CMIS 将元数据写入 Alfresco 中的对象,而直接文件挂载只会将文件写入存储库而无需额外的元数据.
除了 Jeff Potts 的回答:
只有极少数扫描仪软件解决方案支持使用 http/webdav/cmis 进行传输。我根本不建议直接扫描到 Alfresco。在文件共享或本地文件系统中完成最终 image/pdf 之前,大多数扫描仪软件解决方案都希望 write/change/delete 几个文件。直接写入 Alfresco 可能会导致至少有很多不需要的二进制内容在存储库中被清理之前保留数周,或者在最坏的情况下根本无法工作。
相反,我建议您将扫描仪连接到任何 OS,将文件写入临时本地文件夹,一个简单的 cron 脚本可以将超过一分钟的扫描文件上传到 Alfresco 文件夹。这也将允许例如通过 OCR 流程传输文档,以允许在 Alfresco 中搜索文档。
我在 运行ing Alfresco 在 Linux 主机上使用 docker。
由于其他原因,我必须将 Alfresco 与 docker 一起使用。使用 maven
生成构建脚本 - 您可以在 "Generate your project from the archetypes" 部分的 link 下找到说明。
我已通过 USB 端口将 Brother DCP-J315W
连接到我的电脑。
当我执行时:
scanimage -L
我得到以下结果:
device 'brother4:bus2;dev1' is a Brother *DCP-J315W USB scanner
在 docker 容器中执行相同的命令 returns 错误,发现任何扫描器。
我尝试 运行 具有 host
网络模式的容器,但它似乎毫无意义,因为它不是网络扫描仪。
有什么方法可以在 docker 容器中使用主机扫描器吗?
即使 Docker 容器可以看到扫描仪,您仍然需要能够从扫描仪读取扫描文档并将其放入存储库的软件。与其解决 Docker-has-no-access-to-host-hardware 问题,也许更好的方法是简单地通过 WebDAV 将驱动器映射到 Alfresco。这使用 HTTP/S 所以你应该没有问题连接。
有了它,您应该能够 运行 主机上的扫描软件,并告诉它在安装的驱动器中存储扫描的图像。
另一种方法是检查您的扫描软件是否支持 CMIS,这是使用 Alfresco 等内容存储库的行业标准。如果是,您可以将扫描软件指向 Alfresco CMIS 服务 URL。这种方法可能比挂载驱动器方法更好,因为如果您将元数据分配给扫描的文档,则可以通过 CMIS 将元数据写入 Alfresco 中的对象,而直接文件挂载只会将文件写入存储库而无需额外的元数据.
除了 Jeff Potts 的回答:
只有极少数扫描仪软件解决方案支持使用 http/webdav/cmis 进行传输。我根本不建议直接扫描到 Alfresco。在文件共享或本地文件系统中完成最终 image/pdf 之前,大多数扫描仪软件解决方案都希望 write/change/delete 几个文件。直接写入 Alfresco 可能会导致至少有很多不需要的二进制内容在存储库中被清理之前保留数周,或者在最坏的情况下根本无法工作。
相反,我建议您将扫描仪连接到任何 OS,将文件写入临时本地文件夹,一个简单的 cron 脚本可以将超过一分钟的扫描文件上传到 Alfresco 文件夹。这也将允许例如通过 OCR 流程传输文档,以允许在 Alfresco 中搜索文档。